AMAZINGINDEX.COM 让生活多一点 Amazing
57.2
VOL. 2026.09
2026.09.17
← 返回 2026.09.17 日报
日报快照 · Daily Snapshot
NO. 021

CRAP 指标:量化代码烂味

#ARTICLE HackerNews 2026.09.17
推荐指数 40.0 NO. 021 · 2026.09.17
发布2026/09/16Score70Comments50

CRAP(Change Risk Anti-Patterns)是 2007 年提出的代码质量指标,结合圈复杂度和测试覆盖率来识别高风险代码。对维护遗留系统或做代码审查的工程师,它提供了一个可量化的"代码有多烂"的判断标准。

这篇文章 2011 年发布却在 HN 重新引发讨论,说明一个残酷现实:18 年后代码质量度量仍然没有更好的行业共识。SonarQube 后来内置了 CRAP 指数,但很多团队要么完全不用,要么只盯着覆盖率数字自欺欺人。

真正的问题不是不知道代码烂,而是如何在 deadline 压力下说服产品经理允许重构。CRAP 的价值在于把主观感受变成客观数字,方便在 standup 里用数据争取技术债时间。如果你团队还在用"我觉得这里有点乱"来推动重构,试试把 CRAP 指数贴到 PR 描述里。

意见分歧 46 条评论

核心争论:代码复杂度指标是否真正衡量设计质量,还是沦为形式化目标

thinkingemote

(2011)

bogardon

2026 Google would never have some "fun" like this

verdverm

One of the many reasons leadership needs to change, they are now more aggressive towards exploiting their customers, especially in cloud, Kurain is ruining that platform, but the investors like it

替代方案: DFSAI辅助分析abstractions traversed during interpretationlines of abstraction vs functional implementationlogic statement dispersion
查看原文 →