代码在发臭:一个能"闻"出坏味道的 AI 技能,我拿它扫了最新的开源代码
代码坏味道是软件工程中的概念,指代码表面问题暗示深层缺陷,源于Kent Beck和Martin Fowler在1990年代的讨论。Fowler的《重构》一书列出22种坏味道,并配以重构手法。随着软件复杂度提升,坏味道分类扩展到8大类50+种,涵盖架构、耦合、内聚、设计、代码、测试、命名和复杂度等领域。在AI时代,代码生成加速导致坏味道产量增加,自动化检测变得关键。AI技能“/smell”能自动扫描代码库,识别坏味道并生成结构化报告。其工作流程包括确定扫描范围、并行使用启发式规则取证、生成带优先级的Markdown报告并落盘。实战中,扫描Go语言开源项目Gitlawb/zero,发现测试覆盖率良好但存在上帝对象(如4657行文件)和长文件问题,并提供重构路线图,如立即拆分超大对象、短期审查超长文件、长期优化复杂度。这体现了从直觉到自动化的发展,将主观焦虑转化为可执行清单,助力开发者提升代码质量。