AI编程系列之1:AI 编程的三种范式——从 Copilot 到 Agent 到 Spec
目录前言1. Vibe Coding感觉驱动的编程新范式1.1 Vibe Coding 的四条核心原则1.2 Vibe Coding 适用与不适用2. Agentic Engineering工程化升级范式2.1 为什么纯 Vibe Coding 在大项目中不够用2.2 什么是智能体Agent2.3 任务分解的 MECE 原则3. SDD规范驱动开发三层合同3.1 为什么需要规范3.2 PRD需求规范写做什么3.3 SPEC技术规范写怎么做3.4 质量规范与文件组织4. 为什么大项目必须从 Vibe Coding 升级4.1 复杂度阈值项目从 100 行到 1 万行4.2 协作阈值从 1 个人到 5 个人4.3 维护阈值从能跑到长期演进5. 三种范式的适用场景对比结语前言过去三年AI 写代码从一个猎奇话题变成了工程师的日常工具。但工具更迭的同时背后的编程范式也在悄悄迁移从最早的代码补全到现在的智能体自主执行再到新兴的规范驱动工作流。如果你只关注具体工具而不理解范式差异很容易在项目变大时撞上为什么 AI 越帮越忙的天花板。这篇博客要回答的核心问题只有三个Vibe Coding、Agentic Engineering、SDD 到底在说什么它们各自的适用场景是什么为什么大型项目必须从 Vibe Coding 升级到 Agentic Engineering我们会用具体例子、对比表和决策建议帮你建立一张清晰的范式地图。1. Vibe Coding感觉驱动的编程新范式2025 年初前 OpenAI / Tesla AI 主管 Andrej Karpathy 提出了一个让整个开发圈既兴奋又警惕的概念——Vibe Coding。他的原话非常口语化“完全沉浸在氛围中拥抱指数级增长忘记代码的存在。”翻译成大白话就是不要纠结代码的每一个细节跟着感觉走让 AI 帮你把想法变成能跑的东西。1.1 Vibe Coding 的四条核心原则Vibe Coding 不是乱来它有清晰的底层逻辑意图优先先描述你想要什么效果“做一个深色主题的登录页”而不是告诉 AI 怎么写代码“用 Tailwind 的 bg-gray-900 配 text-white”。快速迭代不追求一次完美拥抱生成 → 测试 → 修正的循环。第一次跑出来丑没关系再说一遍按钮再圆一点就行。信任但验证相信 AI 的能力但永远检查关键逻辑——尤其是数据库、认证、支付等涉及钱和安全的代码。上下文经营持续维护和优化你提供给 AI 的背景信息项目说明、风格约束、禁区规则让 AI 越来越懂你。1.2 Vibe Coding 适用与不适用Vibe Coding 最适合的场景是试错成本低、可视化反馈快的任务原型开发、概念验证最快速度把想法变成可运行的东西个人项目、学习项目探索性编程不确定最终效果边做边看UI / 前端开发截图就是反馈容易判断好不好需要谨慎的场景是那些出错代价巨大、且问题藏得很深的地方生产环境的金融交易系统、医疗数据处理、性能极致要求的核心服务以及所有涉及安全敏感逻辑认证、加密、权限的代码。Vibe Coding 的精髓是改变你的关注点——从关注代码怎么写转向关注产品好不好用。但这句话反过来也成立当你必须关注代码怎么写才能保证正确性时Vibe Coding 就该退场了。2. Agentic Engineering工程化升级范式当 Vibe Coding 撞上几千行代码的中型项目问题就开始出现了。2.1 为什么纯 Vibe Coding 在大项目中不够用四种典型症状代码质量不可控AI 写出能跑但很乱的代码几个月后没人敢动前后矛盾AI 在不同对话中给出相互冲突的实现方式缺乏全局视角AI 只关注当前的小任务忽略对整体架构的影响难以协作没有统一规范时多个人或多次会话的代码风格各异。这就像建房子——自己搭一个小木屋可以随意发挥但要建一栋大楼就必须有图纸、有规范、有质检。Agentic Engineering就是那套图纸、规范和质检体系。2.2 什么是智能体Agent在 AI 编程语境中智能体Agent是一个能自主完成任务的 AI 系统。它和普通 AI 聊天有本质区别维度普通 AI 聊天智能体Agent行为你问一句它答一句你说一个目标它自己规划并执行多个步骤能力只能生成文字能读写文件、运行命令、搜索代码、调用工具主动性被动回答主动规划、主动发现问题记忆仅限当前对话可以有长期记忆比喻百科全书实习生程序员智能体的工作循环是Plan-Act-Observe-Reflect规划-行动-观察-反思的四步循环优秀的 AI 编程智能体不会一股脑把所有代码写出来而是先思考再行动。2.3 任务分解的 MECE 原则Agentic Engineering 区别于乱来的关键是任务分解。推荐用 MECE 原则Mutually Exclusive, Collectively Exhaustive相互独立、完全穷尽把大目标拆成不重叠、不遗漏的子任务。比如把构建一个博客系统分解为用户系统、文章系统、评论系统、分类标签、部署上线——5 个子任务互不重叠合在一起覆盖全部功能。在使用 Claude Code 这样的 Agent 工具时最佳实践永远是先让 AI 制定计划你确认后再执行而不是一上来就让它开始写代码。3. SDD规范驱动开发三层合同Vibe Coding 解决了快的问题Agentic Engineering 解决了自主的问题但还有一个更根本的问题没解决人和 AI 之间的沟通精度。3.1 为什么需要规范你有没有过这种经历在淘宝买衣服时你描述我要一件好看的衣服结果收到的和你想的完全不一样这就是沟通不精准导致的。AI 编程也是一样——“垃圾进垃圾出”模糊的需求必然导致不准确的结果。规范Specification就是你和 AI 之间的合同它明确写清楚要做什么功能需求、怎么做技术方案、做到什么程度质量标准。3.2 PRD需求规范写做什么PRDProduct Requirements Document产品需求文档描述的是要做什么。两个常用模板用户故事User Story格式作为一个 [角色] 我希望 [功能] 以便 [价值/目的]。验收标准Acceptance Criteria格式Given前提条件系统中有 20 篇文章其中 5 篇标记了Python标签 When操作用户点击Python标签 Then预期结果页面只显示这 5 篇标记了Python标签的文章一个非常实用的技巧是让 AI 帮你把模糊想法变成结构化 PRD——直接给 AI 一个 Prompt让它按章节生成。3.3 SPEC技术规范写怎么做SPECTechnical Specification技术规范文档描述的是怎么做。完整 SPEC 包含 5 个模块系统架构前后端如何交互、技术选型用什么框架比如 Next.js Prisma SQLite、数据模型数据库表结构设计、API 接口URL、请求参数、返回格式、目录结构代码放哪个文件夹。规范文件最大的价值之一是——可以直接作为 AI 工具的上下文输入。当你把 SPEC.md 的内容提供给 Claude Code 时它就能精准地按照你的技术方案来写代码。3.4 质量规范与文件组织质量规范定义做到什么程度算合格编码规范代码风格、命名规则、注释要求、测试规范覆盖哪些场景、安全规范输入验证、认证授权、数据保护。建议在项目根目录下创建specs/文件夹统一管理PRD.md、SPEC.md、ARCHITECTURE.md、API.md——所有规范文件都是 AI 可以读懂的合同文本。4. 为什么大项目必须从 Vibe Coding 升级范式升级的本质原因是项目复杂度的增长打破了感觉驱动的前提条件。4.1 复杂度阈值项目从 100 行到 1 万行Vibe Coding 之所以在小项目里好用是因为单个会话的 AI 上下文能装下整个项目AI 改一处就理解了全局。但当代码量从 100 行涨到 1 万行、10 万行单次会话的上下文已经装不下所有细节AI 不可避免地开始近视——它只看到被召唤出来的那几行代码忘了整个项目的架构约定。4.2 协作阈值从 1 个人到 5 个人单人项目用 Vibe Coding 很爽但一旦团队超过 2-3 人没有规范的代码会迅速分化。Agentic Engineering 提供的Plan-Act-Observe-Reflect循环和任务分解是让多个人以及多个 AI 会话协同工作的语言。4.3 维护阈值从能跑到长期演进Vibe Coding 项目最常见的问题3 个月后想加新功能发现原来的代码能跑但没人敢动。SDD 通过规范文档把决策固化下来让项目从一次性的实验变成可以持续演进的产品。5. 三种范式的适用场景对比下面这张表是这一篇最重要的产物维度Vibe CodingAgentic EngineeringSDD核心思路跟着感觉走快速迭代自主规划-执行-验证先写规范再让 AI 执行适合项目原型、个人项目、UI 实验中大型项目、长期维护复杂业务、多人协作项目规模几十到几百行几千到几万行几万行以上团队规模1 人1-3 人3 人以上沟通方式自然语言模糊描述自然语言 任务分解PRD SPEC 质量规范AI 角色创意伙伴自主执行的工程师按规范交付的承包商失败成本低中高必须用 SDD学习曲线最低中等较陡典型工具Cursor Chat、Claude.aiClaude Code、CodexClaude Code 规范文档实操建议是这样的Vibe Coding 永远是你的起点——当想法模糊时先用 Vibe Coding 跑出第一个能用的版本当项目开始变大、变多人、变长期时逐步叠加 Agentic Engineering 的工作流当项目进入生产环境、有明确业务约束时把 SDD 的规范层补上。这三层不是互斥的而是一层层叠加的关系一个成熟的 AI 编程项目往往同时使用三种范式。结语这一篇帮你建立了一张AI 编程范式地图Vibe Coding 解决了快、Agentic Engineering 解决了自主、SDD 解决了精准。三者不是非此即彼的关系而是可以叠加使用的不同工具。