乐于分享
好东西不私藏

为什么有了AI,你反而更需要软件工程

为什么有了AI,你反而更需要软件工程

AI编程做大型项目(番外):为什么有了AI,你反而更需要软件工程
延伸阅读:本系列前4篇讲”怎么做”——
– (一)会拆分的人+AI=10倍效率
– (二)从0到上线的完整流程
– (三)七道质量防线+人怎么把关
– (四)多Agent协作+三条实战路径
>
这篇番外讲”为什么”——为什么前4篇的方法有效,为什么软件工程不是过时了,而是更重要了。
>
如果你还没读前4篇,建议先从第一篇开始,以下内容需要结合前4篇的方法论来理解。

一句40年前的预言,2026年还没过时
1986年,IBM大型机之父Fred Brooks发表了一篇论文《没有银弹》。
核心观点就一句话:软件工程有两类困难,一类可以消除,一类永远无法消除。
类型 定义 举例
本质困难 软件固有的、不可简化的属性 复杂性、一致性、易变性、不可见性
偶然困难 工具、语言、环境带来的伴生问题 手工写样板代码、查文档、语法错误
Brooks断言:没有任何单一技术能在十年内带来一个数量级(10倍)的效率提升。
40年过去了,AI来了。Claude、GPT-5、DeepSeek——它们能不能打破这个魔咒?
先看数据:
基准测试 最佳成绩 说明
SWE-bench Pro 64.3%(Claude Opus 4.7,2026-04) 35.7%问题仍然无法解决
SWE-bench Verified 87.6%(Claude Opus 4.7,2026-04) 相对较高,但Pro版更接近真实复杂度
数据截至2026年4月25日。*注:SWE-bench Verified已被发现存在数据污染问题(模型可能在训练数据中见过类似题目),SWE-bench Pro更能反映真实软件工程能力。*
再看一组真实数据:
– 独立研究机构METR做了随机对照试验(16名资深开发者、百万行级开源项目),结果AI工具让资深开发者变慢了19%
– Atlassian报告:99%使用AI的开发者声称每周省10+小时,但整体工作量没有减少
– 哈佛商业评论文章标题直接就是:《AI Doesn’t Reduce Work—It Intensifies It》
AI解决了大量”偶然困难”——样板代码、语法错误、文档查询。但Brooks说的四大”本质困难”,纹丝不动。
为什么?逐个看。
复杂性:AI转移了复杂性,而非消除。开发者从”理解每一行代码”变成了”验证AI输出是否正确”。Addy Osmani总结了AI的四类典型错误——假设传播(早期误解在后续放大)、抽象膨胀(100行能解决的搭1000行)、死代码累积(不清理旧实现)、迎合性同意(不合理的描述也热情执行)。
一致性:外部约束(API接口、业务规则、合规要求)仍然存在。AI可以更快”读懂规矩”,但规矩不会消失。
易变性:GitClear对2.11亿行代码的研究发现,代码重构比例从2021年的25%降到了2024年的不到10%。更多代码 + 更少人类理解 = 更难维护。2026年已被预测为”AI驱动技术债务爆发年”。
不可见性:软件本质上仍然是不可见的逻辑结构。MIT CSAIL 2025年发表在ICML的论文指出,AI不会主动暴露置信度——它不会告诉你”这部分我比较有把握,那部分你最好核查一下”。开发者正在陷入”黑盒验证黑盒”的困境。

Karpathy用一年证明了一件事
Andrej Karpathy,OpenAI联合创始人、前Tesla AI负责人。
2025年2月,他创造了”Vibe Coding”这个词——”忘记代码的存在,拥抱直觉,跟AI聊天就能写软件”。
2026年2月4日,他亲手埋葬了这个概念,提出新名词:Agentic Engineering
为什么?
Vibe Coding有三个致命缺陷:
缺陷 后果 数据
没有设计 代码结构混乱,技术债反噬 第三版功能迭代时开始崩溃
没有测试 不知道代码为何能跑,也不知道何时会出错 AI代码bug密度是人工手写的1.7倍
没有审查 安全漏洞、权限逻辑错误被忽略 AI代码安全漏洞率是人类代码的2.74倍
更触目惊心的真实案例:
200万美元欺诈交易案(2025年3月,crackr.dev收录):一个完全由AI生成代码编写的支付网关,缺乏输入验证,批准了200万美元欺诈交易。代码能正常运行、测试全通过,但在对抗性条件下逻辑完全错误。更触目惊心的是,2026年3月亚马逊因AI辅助代码部署导致美国区服务中断6小时、630万笔订单流失(来源:D3 Security)
45%的安全漏洞率(Veracode 2025报告):近一半的AI生成代码包含安全漏洞,因为不安全模式在训练数据中更常见。
8倍代码克隆(GitClear研究):LLM缺乏架构判断力,大量复制粘贴训练数据中的代码模式。
Vibe Coding的假设——”AI足够聪明,我不需要懂它在做什么”——在原型阶段成立,在生产环境里是一场灾难。
Karpathy的新定义很清楚:你不再是产品经理,你是架构师。 AI是工程师,你是决策者。核心变化不是”不用写代码了”,而是工作单元从”对话”变成了”任务”——有明确输入、明确输出、明确验收标准的任务。

软件工程理论没过时,但需要重新校准
系列第1篇讲了40-20-40法则(40%设计—20%编码—40%测试),第3篇讲了七道质量防线,第4篇讲了人的不可替代性。这些方法不是凭空发明的——它们背后是几十年软件工程理论的沉淀。
AI时代,这些理论变了什么?
敏捷vs瀑布:争论的终结
过去十年,敏捷和瀑布的争论占据了软件工程讨论的大量篇幅。
AI直接终结了这场争论。原因不是某一方赢了,而是瓶颈变了
维度 传统开发 AI编程
瓶颈 编写代码(慢且贵) 定义需求(搞清楚要写什么)
应对策略 “够用”的规范→快速迭代 “精确”的规范→AI快速构建
反馈周期 数周/数月 数分钟/数小时
当前最有效的开发模式叫Spec-Driven Development(规范驱动开发)——在写代码之前写详细的规格说明,然后让AI一次性构建。这看起来像瀑布,但它不是。
区别在哪?犯错成本。 传统瀑布中,写完规范要等6个月才能看到运行的软件,改规范代价是灾难性的。现在AI把反馈周期压缩到了20分钟——写规范,AI花20分钟构建,发现问题就改规范,AI再花20分钟重建。
正如Allstacks的分析:瀑布失败的真正原因从来不是”提前做规划”,而是”犯错成本太高”。当犯错成本降到20分钟,提前规划就成了最优策略。
你的团队现在写代码之前会先写规格说明吗?犯错成本有多高?一次错误的修改要多久才能发现?
未来真正有效的模式是混合的:“敏捷规划,AI执行”+”瀑布需求,敏捷优化”。
SOLID原则:五个字母的新含义
原则 传统含义 AI时代变化
SRP 一个类只有一个变化原因 转向”AI上下文内聚性”——模块边界由AI能否完整理解来定义
OCP 对扩展开放,对修改封闭 转向”保护核心模型,允许AI重构外围”——修改成本已下降
LSP 子类型必须能替换基类型 转向”契约与行为测试约束”——用测试约束AI的行为兼容性
ISP 小接口更灵活 更重要——小而精确的接口直接决定AI生成质量
DIP 面向接口编程 更重要——实现AI模块热替换和隔离测试的基石
核心变化:SOLID从”写好代码的规范”变成了“向AI下达精确指令”和”验证AI生成代码”的防御性架构
TDD:从最佳实践变成必杀技
系列第1篇和第3篇都强调了TDD。从理论角度看,TDD在AI时代为什么如此重要?
因为TDD解决的是AI编程的核心矛盾:生成速度极快,但信任成本极高。
先写测试再让AI实现,本质上是把”验证责任”从”事后审查”前置到了”事前约束”。测试用例就是你给AI设定的”合同”——AI不是自由发挥,而是在合同框架内生成代码。
数据已经证明:TDD方式首次通过率85-95%,无测试直接写只有30-40%。

真正的核心挑战:信任治理
回到系列的核心命题。
前4篇给了一大堆方法:40-20-40法则、三层分解、七道防线、多Agent协作……这些方法的共同目标只有一个:在概率性输出中建立确定性信任。
AI是大模型,输出是概率性的。你问同一个问题两次,可能得到不同答案。这不像是传统编程中的确定性逻辑。
所以,软件工程在AI时代真正要做的事,不是”管理代码”,而是“管理信任”
“`
信任治理闭环:
1. 约束(Constrain)  → 规格说明、安全提示词、SOLID边界
2. 验证(Verify)     → TDD、CI/CD、七道防线
3. 校准(Calibrate)  → 复盘采纳率、bug率,动态调整信任范围
4. 决策(Decide)     → 人在每道防线中的最终判断
→ 不断循环,信任范围逐步扩大,但始终有人类兜底
“`
hotdry.top的2026-2027软件工程趋势报告用一句话总结:“最好的工程师不再是编码最快的,而是知道何时不信任AI的。”
你在项目中有没有过”不信任AI的直觉”的时刻?最后证明你对了,还是AI对了?
Gartner 2025年预测:到2028年,90%的企业软件工程师将使用AI代码助手(2024年初这个比例不到14%)。但工具普及不等于能力普及——会敲键盘和会指挥AI,是两码事。

番外小结
这篇番外想传达的核心认知:
1. Brooks的预言在2026年依然成立——AI解决了偶然困难,四大本质困难纹丝不动,还引入了新的本质困难(理解债务、意图精确性悖论)
2. Vibe Coding的创造者亲手埋葬了它——没有设计、没有测试、没有审查的AI编程在生产环境是定时炸弹
3. 经典理论没过时,需要重新校准——敏捷vs瀑布的争论被”方法论敏捷性”取代,SOLID从代码规范变成了AI防御性架构,TDD从最佳实践变成了必杀技
4. 软件工程的核心从”管理代码”变成了”管理信任”——约束→验证→校准→决策,循环往复,人始终兜底
回到系列第一篇的那句话:会拆分的人 + AI = 10倍效率。 现在可以补充后半句了:理解软件工程的人 + AI = 10倍可靠。 效率是工具给的,可靠性是你自己挣的。

*数据截至2026年4月。AI工具行业变化快,部分数据可能已有更新。*
来源
– Fred Brooks, “No Silver Bullet: Essence and Accidents of Software Engineering” (1986)
– MIT CSAIL, “Challenges and Paths Towards AI for Software Engineering” (arXiv:2503.22625, ICML 2025)
– Yrom’s Blog, “没有银弹:Agentic Coding 时代的软件工程效率边界” (2026-03-16)
– blog.ccino.org, “Karpathy亲手埋葬Vibe Coding:Agentic Engineering接管2026” (2026-04-03)
– StepTo, “The Vibe Coding Hangover: AI Code Quality Crisis” (2026-03-18)
– crackr.dev, “Vibe Coding Failures: Documented AI Code Incidents” (2026-03)
– CNN Business, “The demise of software engineering jobs has been greatly exaggerated” (2026-04-08)
– METR随机对照试验(16名资深开发者,百万行代码项目)
– Veracode 2025 AI代码安全报告
– CodeRabbit(470个开源PR分析)
– GitClear(2.11亿行代码研究)
– Allstacks, “Spec-Driven Development Isn’t Waterfall” (2026-03-12)
– compositecode.blog, “Rethinking SOLID Principles in the Age of AI” (2025-10-30)
– blog.hotdry.top, “2026-2027软件工程趋势” (2026-01-12)
– Gartner, “Top Strategic Trends in Software Engineering for 2025 and Beyond” (2025-07-01)
– Atlassian DevEx Report (2025)
– HBR, “AI Doesn’t Reduce Work—It Intensifies It”
– SWE-bench排行榜数据(llm-stats.com / marc0.dev,2026-04-25)