为什么你的 AI 编程项目在失败。
1. 单体架构。AI 经常默认采用单体设计的标准和原则。有正当理由去设计并构建单体应用,哪怕是复杂的那种。但对大多数真实的软件项目来说,它们已经算不上「常规」了。AI 需要明白这一点。
2. 没有对「好」的定义。人们期望机器读心。这不讲理。与此同时,「好」的定义,在开发者之间、经理之间、项目之间、技术栈之间、库之间、你所在技术栈的层级之间、你身处的行业之间,全都不同。把「好」对你意味着什么,说明白。
3. 没有规划。在一个像 Claude Code 这样的工具里,对现有代码库「凭感觉」搓出一个功能,真的足以把你的房子烧掉。让机器为一切建立文档。提案、计划、史诗、拆解、QA、编码规范。你会庆幸自己做了。
4. 没有流程。任务必须是确定性的、可测试的。这是一条写代码的通则——至少如果你的东西是要能跑的,而不是诗歌。
5. 没有单元测试。作为开发者你可能讨厌单元测试,不明白自己为什么需要它。但在 AI 增强编程的场景里,你需要单元测试的理由和你一直以来需要它的理由完全相同:检验你的假设,以及你写代码时脑袋里的那个心智模型。别在这上面自作聪明。它们会成为你最好的调试朋友。
6. 没有安全!速率限制缺失、路径穿越、注入,这些 AI 生成代码时都不会帮你考虑。让它去想安全最佳实践,并基于代码库给出建议。
7. 没有 QA 循环。你没让你的 AI 做同行评审或 QA 这份工作。你还经历了多次有损摘要,而且你的代码里很可能埋着你不知情的 mock 和占位符值,不知道它们在那里你就找不到它们。
8. 巨型提交!这一条你得盯紧了,因为当代码一英里一英里地狂奔时。
9. 庞大到失控的测试面。你不该想建一个不可测试的应用。但是,鉴于你是人类,你不可能一个人一口气有效测试 15 万行代码。理智点,把测试规划进你的流水线。
放大才是目的
就是这些了。
你开发应用时用到的所有常规规则,但现在是为 AI!
这一切是否把「省事」从你的 AI 自动化会话里拿掉了?是的。绝对是。省事就不该是目的。
目的是放大。