C
ChaoBro

AI 编程代理的维护成本:当 AI 写的代码开始堆积,开发者要回去手写了吗?

AI 编程代理的维护成本:当 AI 写的代码开始堆积,开发者要回去手写了吗?

AI 编程工具发布的时候,PPT 上永远只写一个数字:「提效 10 倍」。

没人写第二个数字:维护成本增加多少。

这周 Hacker News 上一篇文章火了——「我要回去手写代码了」("I'm going back to writing code by hand")。作者不是老古董,是一个用过各种 AI 编码工具后做出这个决定的开发者。帖子 121 分,51 条评论,评论区基本分成两派:一派说"终于有人讲真话了",另一派说"你用错了工具"。

两边都有道理。

AI 写代码快,但维护别人的代码——哪怕是 AI 写的——从来不快

这个问题不是 2026 年才有的。软件工程界早就知道一个事实:读代码的时间远大于写代码的时间。AI 把这个不等式放大了。

当 Claude Code 或 Codex 能在 30 秒内生成 500 行代码时,你省下了写的时间。但三个月后,当这段代码出了 bug,你需要理解它为什么这么写、依赖了哪些隐式假设、改了某个变量会不会影响别的地方——这些时间一分都没省。

两个被忽略的成本

第一是审查成本。 AI 生成的代码看起来都对——语法正确、逻辑通顺、测试通过。但它可能引入了你不需要的抽象、过度设计的模式、或者一个只在特定边界条件下才会触发的 bug。审查 500 行 AI 代码的时间,可能比自己写 200 行还长。

第二是知识稀释成本。 如果你让 AI 写了核心业务逻辑,而你自己没逐行读过——那你的团队里就没有人真正"懂"这段代码。当问题出现时,没有人能凭直觉定位,只能从头读起。

但别急着扔掉 AI 工具

这篇 HN 帖子的评论区有一个高赞回复说得好:"不是 AI 写代码有问题,是'无脑接受 AI 输出'有问题。"

AI 编码代理在以下场景确实是 10 倍提效:

  • 样板代码(boilerplate):CRUD 接口、数据模型定义、配置文件
  • 已知模式的重构:把 callback 改成 async/await,把 class component 改成 hooks
  • 测试生成:基于已有代码生成单元测试框架
  • 文档和注释:给复杂函数补充文档

但在以下场景,你要保持警惕:

  • 核心业务逻辑:这里每一个判断都有业务含义,AI 不理解你的业务
  • 性能关键路径:AI 倾向于写"正确"的代码,不一定是"快"的代码
  • 安全敏感代码:AI 可能遗漏边界条件检查,或者引入你不需要的依赖

一个实用的工作流

我在项目里的做法是:AI 生成,我审查;AI 建议,我决策。

让 Agent 写初稿,但每一行合并到主分支之前,我都要过一遍。不是逐行审,而是带着问题审:这段代码解决了什么问题?有没有更简单的写法?会不会在六个月后让接手的同事骂人?

如果答案是"不确定",那就自己重写。

AI 编程的下一阶段

HN 评论区有人提到一个观点:真正的问题不是"AI 该不该写代码",而是"我们还没建立起管理 AI 生成代码的工程纪律"。

代码 review 流程需要适应 AI 时代。也许未来的 PR 模板里需要加一个字段:"这段代码有多少比例是 AI 生成的?你审查了哪些部分?"

也许 CI 流水线需要加入 AI 代码质量检测——不是检测"是不是 AI 写的",而是检测"这段 AI 代码的可维护性如何"。

这些基础设施还没成熟。但迟早会有。


主要来源: