摘要:"人人都能写代码"的口号喊了两年多,AI 编程并没有让程序员一夜失业。回头看,这更像一场真实的工业进化——从"猜你喜欢"到"魔法",再到"工程",我们一步步学会了怎么跟 AI 合作。
2026 年了,程序员还在写代码。
两年前那股"AI 要取代所有程序员"的焦虑劲过去了,大家发现事情没那么简单。AI 编程没有像科幻电影演的那样,一夜间让全人类失业。相反,它像一场真实的工业进化——有试错,有弯路,有回归理性。
从最初的"代码补全"到现在的"规格驱动",AI 编程其实经历了三个挺有意思的阶段。
今天不聊深奥的算法,就聊聊这三段"往事",看看我们是怎么从"调戏"AI 走到"指挥"AI 的。
阶段一:Copilot——"猜你喜欢"
回想 GitHub Copilot 刚问世那会儿,那种震撼感现在还记得。
那时候怎么用 AI?最经典的操作是:写一行注释// 快速排序,然后屏住呼吸按下Tab键。看着代码像瀑布一样自动流出来,感觉像是雇了个不用喝咖啡、手速极快的实习生。
这个阶段的 AI,定位很清晰:智能副驾(CoPilot)。它的逻辑也简单——预测你下一行想写什么。
说直白点,就是"猜你喜欢"。
好用是真的好用。写个小工具、补全个函数,效率提升立竿见影。那些重复的样板代码、记不住的 API 参数,它都能帮你补上。
但问题也很明显:它是个"近视眼"。
当你写一个独立脚本时,它表现得无所不知。但只要工程规模超过几万行,涉及复杂的业务逻辑和跨文件调用,它就开始胡言乱语。
因为它没有全局视野。它知道怎么写这一行,但不知道为什么要写这一行。它没见过你整个项目的架构,没读过你的接口文档,更不知道你昨天在 code review 里跟同事约定的命名规范。
Copilot 像个刚入职的实习生——聪明,肯干,但需要人盯着。你让它干嘛它干嘛,但它不知道你在干啥。
这个阶段的代表工具:GitHub Copilot、Tabnine、Codeium。
阶段二:VibeCoding——"魔法"
为了解决 Copilot 的短视,大家开始尝试另一种更"狂野"的姿势。最近圈子里有个很火的词:VibeCoding(氛围编程)。
说白了就是"靠感觉"。
你不再一行行写代码,打开一个对话框,对着 AI 挥毫泼墨:"给我写个类似淘宝的电商网站,要有购物车、支付、推荐功能,UI 要赛博朋克风。"
然后等着看奇迹。
一开始,确实是惊喜。
第一次用 VibeCoding 的人,很难不被震撼到:三分钟,一个能跑的待办应用出来了;十分钟,一个带后端的博客系统搭好了。你忍不住发朋友圈:"这玩意儿真能处!"
这种感觉太像魔法了——念一段咒语,东西就出来了。
但惊喜之后,大概率是惊吓。
用过 VibeCoding 的人,都经历过这个心路历程:
第一天:"卧槽,这也太神了!"
第三天:"嗯?这个 Bug 怎么回事?"
第七天:"这代码谁写的??哦,是我让 AI 写的……"
具体死法有三种:
1. 黑盒焦虑
AI 生成了几千行代码,跑起来了,但你根本不知道它是怎么跑起来的。哪天要改个功能,从哪下手?点开文件,全是陌生的变量名和看不懂的逻辑。
2. 维护噩梦
一旦运行出 Bug,修复它可能比你自己从头写还要慢。AI 生成的代码有自己的"风格",你看不懂,改不动。更糟的是,你改了一处,崩了三处。
3. 生产力假象
项目起步确实快,一天搞定一周的活。但当需要增加一个细微的定制功能时,整个系统可能因为最初的"氛围感"而崩溃——地基没打,装修再美也白搭。
VibeCoding 就像盖房子不看结构图,只看装修效果图。图纸很美,人住进去可能随时会塌。
有人形象地说:VibeCoding 是"爽在开头,烂在结尾"。
还有人说得更直白:"VibeCoding 的 Vibe,最后都变成了 Vibug。"
魔法好用,但魔法靠不住。
这个阶段的代表工具:Replit AI、Cursor Chat、早期版本的 Devin。
阶段三:SDD——"工程"
在经历过 VibeCoding 的"宿醉"后,程序员们终于意识到一个道理:AI 越强,人类就越需要变回那个"定规矩"的人。
于是,现在最成熟、最高效的范式浮出水面:SDD(Spec Driven Development,规格驱动开发)。
简单来说,SDD 这套玩法要求人类先写出一份详尽的、逻辑严密的规格说明书(Spec),再让 AI 按说明书干活。
这就是工程思维和魔法思维的区别。
魔法思维是:"我要一个能飞的东西",然后等着奇迹发生。
工程思维是:"我要一个飞行器,机翼面积 X 平方米,引擎推力 Y 牛,材料强度 Z,请按要求制造"。
分工是这样的:
| 角色 | 负责什么 |
|---|---|
| 人类 | 定义架构、拆解逻辑、确定接口协议 |
| AI | 在规格约束下,严谨地填充代码实现 |
有了"规格"的约束,AI 从乱开脑洞的艺术家,变成了拥有顶级执行力的高级工程师——生成的代码能跑通,可测试,也可维护。
SDD 的核心思想其实很朴素:人类负责抽象和判断,AI 负责执行和填充。各干各擅长的,效率最高。
有个形象的比喻:Copilot 时代,人类是"打字员",AI 是"提示词生成器";SDD 时代,人类是"建筑师",AI 是"施工队"。
建筑师生成蓝图,施工队按图施工。出了问题,能定位是设计问题还是施工问题。
这个阶段的代表工具:Cursor Composer、Anthropic Claude Code、OpenAI Codex 企业版。
程序员的身份转换
从 Copilot 到 SDD,AI 编程的历史其实就是人类不断收回"指挥权"的过程。
我们不再满足于让 AI 帮我们写代码,开始学习如何更好地定义问题。
过去,优秀的程序员是"手艺人",比的是谁的逻辑漏洞少,谁的代码写得优雅。
未来,优秀的程序员更像是"架构师"和"审查官",比的是谁能把复杂的业务抽象成清晰的规格,谁能一眼看出 AI 生成的方案里隐藏的结构性风险。
这故事跟"AI 取代人类"没啥关系,说的是"人类学会用工具"。
AI 编程的进化,把我们从重复的打字中解放出来,好去思考那些真正值得思考的复杂问题。
毕竟,代码只是实现手段,解决问题才是目的。
参考:文中阶段划分参考自 OpenAI、Cursor、Anthropic 等机构 2025-2026 年技术博客及开发者社区讨论。
夜雨聆风