最近在研究 Cursor、Claude Code、Codex 等工作流时,越来越明显地感觉到软件开发正在发生变化。过去几年大家讨论最多的是 AI 辅助编程,现在讨论更多的是 Agent、MCP、Skills、SDD。表面上看只是工具升级,实际上是开发模式正在发生转变。
最开始接触 AI 编程时,大多数工具都类似 GitHub Copilot,工作模式大概是「人写代码、AI 补全代码」:
人写代码
↓
AI 补全代码
例如写一个函数,刚敲下函数签名,AI 就自动补全后面的逻辑:
function calculatePrice() {
// AI 自动补全后面的逻辑
}
这时候 AI 更像一个超级代码提示工具。需求分析、技术设计、架构选型、测试验证这些事情仍然由程序员负责,AI 主要解决的是编码效率问题。本质上还是「人负责思考,AI 负责打字」。
很多开发者第一次感受到 AI 的价值,也是从这里开始的。
随着 Cursor Agent、Claude Code 等工具出现,AI 的角色开始发生变化,它不再只是代码补全工具。AI 开始具备读文件、改文件、搜索代码、执行命令、调用 MCP、自动测试等能力,边界不断扩大。
工作模式也逐渐从「补全」变成了「给目标,AI 执行」:
人给目标
↓
AI 执行
例如只需要丢一句「增加订单导出功能」,AI 就可以自动把整条链路跑完:
分析代码
↓
修改数据库
↓
新增接口
↓
新增页面
↓
编写测试
很多原本需要半天的工作,现在十几分钟就能完成。程序员的角色,也开始从编码者变成审查者。
Agent 能力增强之后,新的问题出现了——AI 很能干,但有时候太能干。经常会出现你想让它改 A,结果它顺手把 B、C、D 一起改了;或者功能是实现出来了,但并不是你想要的实现。
问题不在于 AI 能力不够,而在于输入不够清晰。于是开始出现 SDD(Specification-Driven Development),核心思想很简单:先写规范,再让 AI 实现。
需求
↓
Proposal
↓
Design
↓
Spec
↓
Tasks
↓
Implementation
与其告诉 AI「帮我做个用户系统」,不如把规范写清楚:
用户角色:
- 游客
- 普通用户
- 管理员
登录方式:
- 邮箱密码
- OAuth
安全要求:
- JWT
- Refresh Token
验收标准:
- 登录耗时 < 500ms
输入越结构化,AI 的输出质量就越稳定。
很多人认为 AI 正在替代程序员,但我觉得更准确的说法是:AI 正在替代代码生产过程。
过去的软件开发,是程序员把需求翻译成代码;而未来的软件开发,是把需求翻译成规范,再交给 AI 生成代码:
| 类型 | 过去 | 未来 |
|---|---|---|
| 流程 | 需求 → 程序员 → 代码 → 产品 | 需求 → 规范 → AI → 产品 |
| 核心产物 | 代码 | 规范 |
代码开始变成一种中间产物。就像今天很少有人手写汇编一样,大部分开发者关注的是业务逻辑,而不是机器指令。
过去很长一段时间里,代码是软件开发的核心资产。需求最终要落到代码上,设计最终要落到代码上,团队协作也围绕代码展开。
但 AI 出现之后,情况开始变化。越来越多的代码不再由人编写,程序员更多是在描述目标,AI 根据目标生成实现。这意味着代码的重要性正在下降,而规范的重要性正在上升。
未来很多项目的核心资产,可能不再是代码仓库,而是产品规范、设计文档、业务规则和工作流定义——代码只是这些规范的实现结果。
过去几年最有价值的能力是「写代码的速度」,现在这个能力的重要性正在下降,尤其是 CRUD、后台管理系统、表单页面、普通 API、标准业务逻辑,这些已经越来越适合 AI 自动生成。很多公司开始发现,「一个人 + AI」约等于过去三四个人。
与之相反,下面这些能力正在变得越来越重要:
| 能力 | 为什么升值 |
|---|---|
| 需求分析 | 很多项目失败不是代码写错,而是一开始需求就没定义清楚。AI 能写代码,但不能替你决定产品应该长什么样 |
| 系统设计 | 10 万用户和 1000 万用户对应的架构完全不同,这些决策目前仍然需要经验 |
| 领域知识 | 金融、医疗、工业控制、游戏引擎等领域,最值钱的往往不是代码能力,而是行业知识 |
| Specification Engineering | 把模糊想法转化为结构化规范,未来可能会成为一个专门的岗位 |
未来单纯依赖编码速度建立竞争力,会越来越困难。
历史上类似的事情已经发生过很多次:
汇编 → C
C → Java
Java → Python
虚拟机 → 云计算
每次都会有人说「程序员要失业了」,但结果软件行业规模反而越来越大。
原因很简单:开发成本下降之后,不会减少软件,而是产生更多软件。过去因为成本太高无法实现的需求、因为人力不足放弃的想法,未来都会被实现、被尝试。软件不会变少,只会越来越多。
未来的软件开发大概率会变成这样:
描述想法
↓
AI 追问需求
↓
自动生成规范
↓
自动生成系统
↓
自动部署
↓
自动监控
程序员主要负责决策、审查、优化和风险控制,而不是每天写大量重复代码。未来最有价值的人,可能不是写代码最快的人,而是最能定义问题的人。
过去程序员最大的价值是「把需求翻译成代码」,未来程序员最大的价值,可能变成「把想法翻译成规范」。
代码会越来越像编译产物,而规范会越来越像源代码。甚至很多年后回头看,「需求文档 → AI → 系统」可能会像今天「C 代码 → 编译器 → 机器码」一样自然。
AI 编程的发展方向,并不是让 AI 学会写更多代码,而是让代码变得越来越不重要。从 Copilot 到 Agent,从 Agent 到 SDD,软件开发的重心正在从「如何实现」转向「定义什么值得实现」。
未来最稀缺的能力,可能不是编程本身,而是把一个模糊想法变成一份高质量规范的能力。代码正在逐渐退居幕后,而意图,正在成为新的编程语言。