视频来源于 Ryan Peterman 播客的中译版本,Bjarne 对当下大模型生成代码持 审慎批判态度 ,并非全盘否定 AI,而是指出工程实践中的现实短板与行业风险。
一、AI 生成代码本身存在的质量缺陷
- 代码臃肿,自带历史遗留缺陷 :大模型是基于互联网上的旧代码数据集训练,生成代码本质是模仿已有代码,会一并复刻旧代码的性能问题与历史 Bug,并非产出更优的全新实现。
- Bug、安全漏洞更多,验证难度极大 :AI 产出的代码很难完整校验正确性、安全性。哪怕只是对提示词做很小的修改,模型就会以不可预测的方式大范围改动整个代码库,破坏传统软件工程 “局部修改” 的原则;修复一处小问题,可能整个模块全部被重写,排查、审查成本极高。
- 现实现象:资深开发者负担加重 ,他提到已经看到部分高级开发者宁愿选择退休,也不愿意耗费大量精力去审查、修正 AI 生成出来的不可控代码。
二、行业人才层面的深层担忧
企业寄希望于 AI 替代初级程序员、缩减人力成本,这会切断程序员成长链路:初级开发者是未来资深工程师的储备力量,如果初级岗位被大量砍掉,未来将没有足够的人才,来完成 AI 代码的审核、维护、排错工作,造成人才断层。
三、对 AI 编码的定位:适用场景有限
- 肯定有限辅助价值 :AI 适合非关键业务场景,可用于辅助写文档、简单样板代码等低风险工作。
- 坚决不适合高可靠核心系统 :对于 C++ 所面向的高性能、高安全、对稳定性要求严苛的底层、内核类核心业务,不能直接依赖 AI 生成代码;这类系统仍然需要人理解代码逻辑、掌控实现细节。
- 核心判断标准 :评价 AI 编码不能只看 “能不能跑出结果”,要看 整体工程总成本 ;如果 AI 生成后,人类验证、改写、维护的工作量巨大,那么 AI 实际上没有提升整体工程效率。
四、补充:他不认同的误区
不认同 “自然语言可以替代编程语言” 的观点。编程语言的价值就在于精确、可控地表达逻辑;而大模型的自然语言转代码输出充满不确定性,无法满足可靠系统开发的严谨要求InfoQ。
补充:他不是反对 AI 技术本身,而是反对盲目吹捧、不加审查直接上线 AI 生成代码的开发模式。
如果你需要,我可以帮你把这份总结压缩成简短版笔记,方便摘抄。