AI 写代码现在确实快。给它一个清晰需求,几秒钟就出来一大段能跑的代码。但用得越久,越会发现一个反差:写代码变快了,交付一个可靠的系统却没有变快多少。因为瓶颈从"敲代码"转移到了"判断、验证和负责"上,而这些恰恰是 AI 目前最弱的地方。
这篇不说 AI 能做什么,专门讲它在程序员协作中还不足的地方,以及在这个背景下,程序员该往哪个方向使劲。
一、AI 在协作开发中的不足
1. 没有长期记忆,只看得到局部
AI 每次对话基本是"重新读一遍代码"来理解项目,没有跨会话的持续记忆。项目一大,它就只看到当前打开的几个文件,非常容易改了 A 处、破坏了 B 处的不变量。跨模块的一致性、全局约束的维护,是它最明显的短板。
2. 需求越模糊,越倾向"自己猜"
需求越不清晰,AI 越不会停下来问,而是按通用理解补全,然后自信地做下去。结果常常是方向就错了,返工成本比手写还高。它不理解你们团队的黑话、历史约定和隐含前提。
3. 会做"正确的局部",但缺乏架构品味
它能写出某个函数内正确的代码,但缺乏系统级取舍:要么过度设计,为一个需求引入一堆抽象;要么该抽象时到处复制粘贴。分层、边界、扩展点这些判断,仍然主要靠人。
4. 事实性幻觉与知识时效
它会编造不存在的 API、包名、配置项和版本号,而且说得非常肯定。知识有截止时间,对新框架的行为可能过时。新手最难分辨的就是这种"自信的错误"。
5. 验证和调试能力弱
调试的本质是观察运行时,而 AI 大多只能看着代码猜。竞态条件、内存泄漏、只在生产出现、和环境强相关的问题,它帮助有限。它写的测试有时"能过,但没测到关键点"。
6. 安全与威胁模型缺失
它容易写出有漏洞的代码:SQL 注入、越权、密钥硬编码、权限过宽。因为它没有真正的威胁视角和业务安全边界意识。安全审查必须由人兜底。
7. 缺少组织与领域隐性知识
"我们为什么这么做""这块为什么不能用某个方案",这类靠口口相传的知识,AI 拿不到,也不背历史包袱,所以方案常常"技术上对、业务上不合适"。
8. 可维护性与品味不稳定
命名、抽象层次、代码风格的一致性时好时坏。它默认追求"先让它工作",长期可维护性需要人把关。
9. 不承担结果,也无法为后果负责
最终还是人签字、上线、背锅。AI 不对线上事故负责,也无法做产品取舍。它只是放大器,不是责任人。
二、这些不足带来的真正瓶颈
把上面几条收拢,会发现生成代码反而不是瓶颈了,新的瓶颈是:
- 定义问题:把模糊需求翻译成清晰、可验证的规格。
- 设计边界:决定系统怎么分层、怎么切模块、留哪些扩展点。
- 验证结果:判断 AI 的产出是否正确、安全、可维护。
- 承担责任:为上线的东西负责,做取舍,处理它搞不定的事故。
一句话:AI 把"实现"变便宜了,于是"判断"和"验证"变得更贵。
三、程序员应该重点提升什么
1. 把需求讲清楚的能力
这是 ROI 最高的能力。能不能把模糊需求拆成有边界、有验收标准的任务,直接决定 AI 产出质量。学会写清晰的规格:输入输出、边界条件、失败处理、验收方式。
2. 系统设计与架构判断
当实现层被 AI 承包,人的价值上移到了"怎么切分系统"。多练数据模型设计、模块边界、抽象时机、可扩展性,形成自己的设计品味。
3. 代码审阅与鉴别能力
你不再是"写代码的人",而是"审代码的人"。要能快速识别 AI 产出的坑:边界没处理、异常吞掉、安全隐患、隐藏的性能问题、测试没测到点。读代码、判断对错,比写代码更重要了。
4. 调试与深入底层
越是 AI 搞不定的疑难问题,越值钱。深入理解运行时、并发、内存、操作系统、网络,才能在它束手无策时顶上。
5. 安全意识
把安全内化成习惯:权限最小化、输入校验、密钥管理、依赖审计。AI 生成的代码默认要按"可疑"来处理。
6. 领域与业务理解
技术会越来越平权,懂业务、懂用户、懂行业才是护城河。知道"什么值得做",比"怎么做"更难被替代。
7. 工程化与质量体系建设
把 AI 纳入工程约束:CI/CD、静态检查、测试覆盖率、代码规范、可观测性。让工具帮你在规模化产出时守住底线。
8. 批判性思维与验证习惯
不轻信任何输出(包括 AI 和自己的直觉),凡事验证。控制实验、回滚方案、灰度发布,这些习惯在 AI 时代更关键。
四、往哪个方向发展
| 方向 | 本质 | 举例 |
|---|---|---|
| 向"上"走 | 定义问题、设计系统 | 架构师、技术方案负责人 |
| 向"深"走 | 啃硬骨头 | 性能、底层、分布式、安全 |
| 向"宽"走 | 结合业务与技术 | 懂业务的工程师、产品技术 |
| 向"管"走 | 编排 AI 与工程体系 | 人机协作流程、质量体系搭建 |
一个更现实的判断:纯"翻译需求成 CRUD"的岗位会被持续压缩;而能定义问题、做架构取舍、守住质量和安全、扛住疑难问题、把 AI 编排进工程体系的人,价值反而会上升。
小结
- AI 的不足集中在全局判断、模糊需求、事实可靠、真实环境验证、安全与责任。
- 它把"实现"变便宜后,瓶颈转移到了定义问题、设计边界、验证结果、承担责任。
- 程序员该提升的,是需求的清晰度、架构判断、审阅鉴别、底层调试、安全意识、业务理解和工程体系建设。
- 方向上:向上去做系统与方案,向深去啃硬骨头,向宽去结合业务,向管去编排 AI——共同点是都让自己从"实现者"变成"判断者与责任人"。