产品派
返回

AI时代代码趋向只写且可丢弃,测试成为核心文档

AIInfoQ 中文站2026/9/21 10:05:53
AI 导读

在QCon London“软件工程中的复杂性与创造力”演讲中,Phillip Mortimer表示,人工智能正让越来越多代码变得高密度、难阅读,甚至只能写出而难以维护。面对规模庞大的AI生成代码,测试将承担定义行为和记录文档的职责,自动化审查与基于可观测性的自我修复也会成为重要路径。

Mortimer援引Eric S. Raymond对“只写代码”的定义:代码深奥、复杂或结构混乱,除作者外几乎无人能够修改或理解,作者本人甚至可能无法完全掌握。APL和正则表达式就是典型例子,它们用可读性换取更强的表达能力或性能,体现了高密度带来的复杂性。代码难以直接阅读时,应通过大量输入输出测试来确认实际行为,让测试成为代码文档。

他还提出“代码可丢弃”原则。由于这类代码通常难以调试,工程师不如保留测试、直接重写实现。人工逐行检查全部AI代码会迅速成为瓶颈,因此应把详细测试和自动化审查纳入流程,并让编码智能体监听可观测性平台,在时间窗口内汇总告警,针对高频问题自动提交修复拉取请求。

在采访中,Mortimer建议把智能体作为CI action调用,赋予其资深开发者审查代码所需的能力,使其能够评论、要求修改甚至批准拉取请求。让模型审查自身输出并非总是无效,不同提示词、指令和上下文可以形成有价值的对抗性审查。“去污”智能体还可定期扫描代码库,处理重复代码、未参数化测试和未使用的特性标记等低风险问题。

Mortimer认为,开发者应将意图与实现解耦,借助自然语言提高跨语言迁移能力,把更多精力放在创造上。组织需要为创造者提供时间和安静空间,减少会议、交付和演示干扰;会议可集中在一天开始或结束,以保留连续专注时段。约束同样有助于创新,他以曾任职的文档智能公司Accelex为例,说明早期时间和资源有限反而促使团队找到从表格读取数据的新方法。创造力是长期迭代而非瞬间灵感,AI解决实现问题后,提出并持续打磨想法将成为开发者的核心价值。

AI编程代码审查软件工程可观测性

本文基于公开渠道信息整理,内容可能存在不准确或遗漏之处,不代表本站立场,如内容涉及侵权或错误,请联系我们处理。

阅读原文