FEATUREDComputing Life · Share · 鸭哥调研· rssZH00:00 · 07·09
代码干净不会让 AI 编程助手更聪明,但能让它少走弯路
SonarSource 用 Claude Code 跑了 660 次对照实验,比较干净代码和脏乱代码对 agent 的影响。结果有点反直觉:两边任务通过率几乎没差别,差距不到 1 个百分点。但干净代码让 agent 少消耗了 7.1% 的输入 token 和 8.5% 的输出 token,反复打开同一个文件确认的次数也少了 34%。在多模块任务里,输入...
#Code#SonarSource#Claude Code#Claude Sonnet 4.6
精选理由
精选 · 重要度 78 · 吸引力 + 知识量 + 共鸣
一句话点评
干净代码没让 AI 编程成功率变高,但让它少走了 34% 的回头路,token 消耗也降了 7-8%。
锐评
这篇论文最反直觉的结论是:把代码收拾干净,AI 编程 agent 的任务通过率几乎没变,两边差距不到 1 个百分点。但干净代码确实帮 agent 省了事——输入 token 少花 7.1%,输出 token 少花 8.5%,反复打开同一个文件确认的次数少了 34%。在多模块任务里,文件重复访问甚至降了 50.8%。
实验本身有局限,得先打个折。SonarSource 用自动化工具生成了干净和脏乱两组代码做对比,但真实世界的脏代码是业务退化、多人维护和历史事故搅在一起的产物,不是几个规则违规就能模拟的。作者自己也承认,没跑完整的回归测试,所以不清楚干净侧和脏乱侧的非目标模块有没有被连带破坏。加上 SonarSource 本身卖静态分析工具,问题定义难免带着自家产品的视角。
不过,这篇论文真正有用的地方在于把“干净代码对 AI 有什么用”这个模糊问题拆开了。它证明价值不在成功率,而在降低 agent 找路和确认的上下文成本。投入产出比最高的几件事很具体:保持单一事实源,别在多处维护同一逻辑的不同版本;清理死代码和废弃的旧模式,因为 agent 会把它们当活代码对待;显式标注模块边界,让 agent 的上下文窗口天然包含正确信号。这些不是审美洁癖,是给机器消费的上下文基础设施。
HKR 分解
hook ✓knowledge ✓resonance ✓