殊途同归——Vibe Coding和优秀软件工程实践

代码 AI 生成 测试 评审
发布于 2026-06-10
151

我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。

扫码阅读
手机扫码阅读

文章主旨:

AI辅助编程(Vibe Coding)在显著提升代码产出量的同时,暴露出代码质量、评审协作与维护性等传统软件工程挑战,而好的软件工程实践(如测试驱动开发、小步迭代)仍是解决问题的关键。

关键要点:

  • Cursor收购代码评审公司Graphite,旨在补齐AI生成代码后“评审与合并”环节的短板,反映AI编程中代码质量和协作流程仍是不可忽视的挑战。
  • AI生成的代码量指数级增长,但工程师时间有限,评审和合并的瓶颈凸显;Stacking模式通过将变更单位从PR细化为单个commit,可提升评审与合并效率。
  • Vibe Coding实践中主要矛盾包括:生成容易维护难、团队协作复杂度增加、AI评审可能引入新问题、业务知识在AI生成过程中丢失。
  • 通过传递业务知识(Markdown文档)、让AI先生成思考过程与任务列表、保留上下文记忆库、实施测试驱动开发(TDD)、小步迭代等方法,可缓解上述问题。
  • 好的软件工程习惯(如TDD、小步提交)会因AI工具被放大,促使开发人员重新认识并实践这些传统方法。

内容结构:

1. 引言与案例引入
作者分享个人Vibe Coding实践体验,并引用InfoQ文章《Cursor 的 bug 太多了,他们直接买下一家代码评审公司来修!》作为引子。指出Cursor收购Graphite是为了补齐AI时代“创建、评审、合并代码”中缺少的评审与合并能力。

2. 核心问题分析
- 代码产出量暴增约70%,但评审和合并成为瓶颈;Stacking模式通过将变更基本单位从PR转为单个commit,可支持独立测试、评审、合并和回滚。
- 指出AI编程带来四重危机:生成快但维护难、团队协作复杂度上升、AI评审可能不准确、业务知识因缺乏人工理解而丢失。

3. 实践中的调整方案
作者结合自身团队实践,提出以下应对措施:
- 通过Markdown文档传递业务上下文给AI。
- 先让AI生成任务列表,供人类审核。
- 将思考过程写入记忆库(Markdown文档),作为活文档持续更新。
- 执行TDD:先由AI生成单元测试,再生成功能代码,确保测试通过并保留为回归测试集。
- 采用小步迭代,拆分大功能,便于验证、维护和代码合并。

4. 总结与观点
好的软件工程实践(如TDD、小步提交)无论是否有AI都至关重要。高效工程师借助AI如虎添翼,普通工程师可能产出更多垃圾代码。不好的工程习惯会被AI快速放大,从而促使团队主动改进。引例:团队从之前不喜单元测试到因Vibe Coding认识到TDD价值并大范围应用。

文章总结:

作者以Cursor收购事件为引,结合自身实践,强调AI辅助编程时代传统软件工程实践的核心价值,并呼吁开发者借助AI力量进化到下一阶段。

Bruce Talk