从 Vibe Coding 到 AI Coding,借助 AI 实现效率提升

不久前,我就 AI 编程相关的内容,在团队里分享了一些在单兵作战的情况,怎么通过 AI 编程从 0 开始到落地一个中等规模项目的实操经验,来探索在现在这个时间点,如何真正去利用好 AI 进行编程相关工作。

从 Vibe Coding 到 AI Coding

Vibe Coding 这一概念是 Andrej Karpathy 在 2025 年初提出的,中文环境中通常会翻译成“氛围编程”,从字典意思来看,会有一种玩笑的味道,不是在从事一个正经严肃的工作。

但是经过近一年的发展,我觉得现在可以将它正视为 AI Coding,不再是玩具,而是一个可以在正式工作中实际提升生产力的方式

对于每一个从事编程这个行业的程序员来说,从现在开始应该在工作立即尝试、深入使用 AI 编程

集百家之长

在使用 AI 过程中,可以不局限于某个单一模型,可以充分发挥各家模型的优势,从而在产品开发过程中,每一步都得到最优的结果。

  • 例如 OpenAI ChatGPT 的 DeepResearch 相当优秀,那么就可以使用 DeepResearch 来完成整个产品前期的需求调研、竞争对手分析、产品完整功能定义等工作,从而可以在这一步获得一个优秀的产品定义需求文档。
  • 又例如 Google Gemini 拥有超大的上下文窗口,那么可以使用 Gemini 来分析上一步得到的产品定义需求文档,去帮我们完整的定义好整个项目开发周期中的各项工作,包括模块拆分、功能拆分、里程碑定义、测试方案等。
  • 最后,有了具体的执行计划,我们可以使用目前在 AI 编程领域表现最优秀的 Claude Code 来完成项目的开发。

AI 编程的实际体验

注:在使用 AI 编程的过程中,我主要使用的是 Claude Code,以及在 Cursor 中使用 Claude 模型,因此相关的经验都是基于这个模型得出的,如果是其他模型体验可能会有所不同。

代码能力突出

AI 写代码的能力相当优秀,几乎都可以使用对应代码框架的最佳实践进行编码,在单个页面中,也能比较好的组织各个功能,例如在使用 React 时,都能比较好的使用 useEffect 等能力。

对于不熟悉框架的人来说,可以直接让 AI 写出合格的代码,而不用重复学习各种不同的框架,这在开发效率上有极大的提升。

高级开发者受益

在项目开发过程中,受益最大的人反而是高级开发者

高阶开发者通常已经经历过了复杂项目的历练,以及在编码能力上也会相对成熟,对于一个复杂项目,该如何选择框架、库,AI 写的代码是否合格,可以清晰地做出判断

在这样的开发过程中,高阶开发者相当于带领了一个效率非常高,编码能力优秀的下属,对于他自己而言,可以把重心放在架构方向、模块划分等更重要的方向上。

初级开发者成长

初级开发者在 AI 编程逐渐流行之后,会面临一个比较尴尬的境地,编码部分的工作 AI 已经可以很好地完成了,而对于更高阶的架构等相关工作,又没有能力完成,那么在这个时候该如何做呢?

那就是借助于 AI 快速进行学习,不管理让 AI 梳理代码、整理架构,还是绘制时序图等工作,都可以非常好地完成,而在这以前,初级开发者通常需要花费很长的时间去阅读文档和代码来理解整个项目,而且对于不清晰的地方,也只能自己去摸索。

这几乎等于初级开发者给自己找了一个阅读代码非常快、总结能力非常强,并且永远不会疲倦的导师来辅助自己进步

架构师不可替代

在实战过程中,我发现 AI 并不会从一个大型项目,全局的角度,去观察所编写的代码架构是否合理,通常会是集中精力去完成 Prompt 中指定的任务。

这就会导致,AI 编程产出的结果是一个局部最优解,但并不是一个全局最优解

在模块划分、功能复用、代码组织上,我认为这其中架构师的角色还是不可或缺的。即使 AI 可以完成大部分的编码工作,仍然需要一个成熟的架构师去把握整个项目的方向

另外现在也有一些新出的 AI 开发范式,例如 Kiro、Spec Kit 等,但是这些范式本身就会要求使用者有一定的架构师视野,所以还是需要使用者本身具备相应的能力,而不是期待 AI 可以包办所有。

AI 编程的落地场景

就 AI 编码的能力来说,对于不同场景,实施 AI 编程的力度也可以有所不同,而不是一概而论。

工具脚本、效率工具

在这种场景下,不涉及到关键数据,通常是用来辅助人工进行一些重复操作,应该充分发挥 AI 编程的能力,甚至于全托管,直接通过 AI 完成所有的开发、部署、执行操作。

以前通常这类工具需要联系技术团队,排期开发一些小的效率工具,但是现在借助于 AI 的力量,任何人都可以在一个小时内搞定一个小工具,可以极大地提升生产力。

偏上层业务需求

对于偏上层的业务类需求,例如常见的后台功能、活动页面等场景,可以积极地拥抱 AI 编程,借助于 AI 在局部功能开发上的优秀能力,可以极大地提升交付效率。

特别是现在像 Figma MCP 能力、Lovable 等平台的兴起,配合成熟的组件框架,例如 Tailwind 等,AI 从 UI 设计稿到生成代码的能力逐渐成熟,只要不是特别追求像素级匹配,在这类业务上,AI 可是相当得心应手的,交付质量达到 80 分绝对没有问题。

在工具、业务需求开发层面,我觉得 AI 已经可以作为主驾驶来使用,人类可以作为副驾驶去为 AI 保护护航

核心关键业务

在现阶段,在核心关键业务上,我还是倾向于保守地使用 AI 编程,可以更多地使用类似 Cursor 的 Super Tab 功能,去仔细 Review AI 生成的每一行代码,明确知道 AI 生成的代码在做什么,会不会生产副作用。

这个时候,AI 可以作为副驾驶来使用,通过上下文的关联,可以极大地提高这些业务中模式化部分的代码的编写速度,既可以享受 AI 带来的效率提升,又能保障核心业务的逻辑安全。

AI 编程的主要风险

就如前面所说,AI 在局部功能的编码上可以做得相当出色,但是对于全局架构和代码的组织会有所欠缺,因此如果不多加注意,可能会导致项目代码可维护性出现问题,例如代码风格不一致、设计模式上有欠缺等,以及在架构上可能并不会选择最优设计,为以后的功能扩展和维护引来技术债务。

当然这些问题并非不避免,还是需要根据实际场景,选择适合的使用 AI 编程的方式,防止项目代码规模快速、无序地扩张。

总结

AI 编程的演进相当快,从年初到现在,从 claude-3.5-sonnet 到 claude-4.5-sonnet,以及层出不穷的开发范式,都会重塑传统的软件开发过程。

对于开发者来说,需要,也应该保持对 AI 在编程领域的进展,并从现阶段开始就逐渐应用到实际开发工作中,享受由 AI 带来的效率提升。

发表评论?

0 条评论。

发表评论


注意 - 你可以用以下 HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>