用途:在评审或整理难以追踪的代码时应用。核心观点是维护成本等于读者理解代码所需付出的工作,并以两条独立轴衡量:追踪到答案需经过多少层间接;读者要在脑中保持多少隐藏或可变状态。理由是代码被阅读远多于被编写,行数、圈复杂度和“整洁架构”都只是代理指标,读者负担才是关键;扁平文件里塞 50 个全局变量,可能与 6 层适配器栈一样难以推理。
主要做法:合并没有价值的层,例如只有一个调用方的包装器、没有第二实现的适配器、为从未到来的未来引入的间接层,直接内联。缩小状态作用域:优先纯函数(返回而非修改),用局部变量而非字段,用字段而非模块状态,用模块状态而非全局状态;派生而非同步。在边界处命名不变量,而不是在每个使用方重复,让读者只学一次。在新增层或状态前先问:它是否至少等量减少了别处的读者负担。
检验方式:新读者能否在 30 秒内回答“X 来自哪里”和“什么能改变 X”。若不能,就削减层数或状态。
限制:资料未提供具体命令、安装步骤、支持平台、收费方式或示例代码,故暂未提供;该原则为评审用的判断框架,不附带自动化工具。