clean-code 是一项编码技能,依据 Robert C. Martin(Uncle Bob)《Clean Code》的原则,用于把“能运行的代码”转化为“整洁的代码”。其核心理念是:代码若能被原作者之外的开发者读懂并扩展,才算整洁。
主要能力覆盖多个方面:命名上要求意图明确(如 elapsedTimeInDays 而非 d)、避免误导与无意义区分、类名用名词、方法名用动词;函数上要求短小、只做一件事、保持单一抽象层级、参数尽量少、无隐藏副作用;注释上主张用代码表达意图,而非注释坏代码,仅保留法律、说明性、澄清性和 TODO 类注释;格式上采用“报纸隐喻”,高层概念在前、细节在后,相关代码靠近,变量就近声明。
此外还包括:对象与数据结构(数据抽象、迪米特法则、DTO)、错误处理(用异常代替返回码、先写 try-catch-finally、不返回也不传递 null)、单元测试(TDD 三定律与 F.I.R.S.T. 原则)、类设计(单一职责、逐步下降规则),以及识别僵化、脆弱、难以复用、黏滞、冗余复杂等坏味道。
使用方式:在编写、审查或重构代码时应用该技能,并对照其实现清单自检,例如函数是否小于 20 行、是否只做一件事、命名是否可搜索且意图明确、是否通过让代码更清晰来避免注释、参数是否过多、本次改动是否有失败的测试。
适用场景为日常编码、代码评审与重构。限制方面:资料未提供具体安装命令、平台支持、收费方式或效果数据,暂未提供。