软件开发正在经历一场由智能体驱动的范式转变。工具的角色从“代码补全”演进到“端到端交付的协作者”,开发者也从“写代码的人”逐步转型为“编排 AI 的人”。
10.1.1 什么是 Vibe Coding
Vibe Coding 用来描述一种“以自然语言驱动、快速迭代”的编程风格:
完全沉浸在“氛围”中,拥抱快速迭代,暂时忘掉代码细节。
下图对比了传统编程与 Vibe Coding 的区别:
Vibe Coding 的特点
Vibe Coding 的局限
尽管 Vibe Coding 降低了编程门槛,但它也存在明显的局限性:
技术债务累积:AI 生成的代码可能包含隐藏的设计缺陷
调试困难:当 AI 生成的代码出错时,不理解代码的用户难以定位问题
幻觉污染:AI 可能编造不存在的 API 或逻辑,导致难以排查的隐蔽 Bug
[!WARNING] Vibe Coding 适合原型验证,但生产级系统需要更系统化的方法。
10.1.2 什么是 Agentic Coding
Agentic Coding 是 Vibe Coding 的进化版:AI 不仅仅生成代码,而是作为一个自主智能体,通过“执行-观察-修正”的反馈闭环,能够:
图 10-1:传统开发与 Agentic Coding 的工作流演进对比
Agentic Coding 的关键特征
特征
Vibe Coding
Agentic Coding
假设需要将一个 Flask API 迁移到 FastAPI:
Vibe Coding 方式:
Agentic Coding 方式:
10.1.3 编程范式演进历程
编程范式随着抽象层级的提升不断演进,先后经历了机器码、结构化编程、面向对象编程、敏捷与 IDE、AI 辅助编程、AI 原生编辑器、Agentic Coding 等阶段。
图 10-2:编程范式演进时间线
编程范式转移的驱动力主要来自如下几个方面:
工具使用能力:模型能调用 shell、编辑器、测试框架等工具形成闭环。
工程化基础设施:可观测性、权限控制、沙箱与评测体系逐步成熟。
标准化与可移植性:工具描述、上下文传递、轨迹事件等逐步走向标准化。
在企业级落地过程中,单纯推广 AI 编程工具往往会遭遇 “AI 提效陷阱”:
用 AI 开发工具 ≠ 个人提效 ≠ 组织提效。实践中常见的现象是:个人编码环节变快了,但如果需求澄清、评审、测试、发布与治理不升级,组织整体交付速度不一定同步提升。为此,可以用一个简化的“研发成熟度模型”来描述演进路线:
任务拆解为多个环节,AI 参与设计/编码/测试,人负责审查。
人定义需求,AI 端到端推进交付,人做关键把关与验收。
这一演进路径说明:真正的增益来自“流程 + 治理”的升级,而不只是“更强的代码生成”。
10.1.4 开发者角色的转变
随着编程范式的转移,开发者的角色也发生了根本性的变化。下面从技能栈的转变、新型开发者画像以及职业发展三个方面进行探讨。
图 10-3:开发者技能栈的转变
[!IMPORTANT] 智能体编程不会取代开发者,而是改变开发者的工作方式。 重复性编码工作将被自动化,但以下能力将更加重要:
10.1.5 Agentic Coding 的工程挑战
尽管前景广阔,Agentic Coding 在工程实践中仍面临挑战:
智能体的行为具有一定的随机性,同样的输入可能产生不同的输出。
应对策略:
大型代码库可能超出上下文窗口限制。
应对策略:
智能体可能执行危险操作或生成不安全代码。
应对策略:
当智能体的输出不符合预期时,很难追踪问题根源。
应对策略:
下一节: 10.2 智能体编程原理