用途:识别代码坏味道并应用重构技术,改善设计、清晰度与可维护性。主要能力包括代码坏味道目录、重构技术参考、场景决策指南、坏味道检测清单、代码审查与重构工作流;仅在用户询问特定语言模式或需要多文件前后对比示例时,才读取语言模式与真实示例。
始终生效的护栏:不得自动删除 TODO 注释,TODO 需人工决策,应呈现而非删除;遵循三次法则再提取,出现第三次重复才用提取方法/提取类;无测试不重构,先加安全网;清理冗余注释时同步检查是否缺少说明“为什么”的注释。
快速参考(坏味道→信号→技术):长方法(超10行、多重职责)→提取方法;大类(超10个方法、多重关注点、难测试)→提取类;基本类型偏执(用字符串/整数常量为领域概念)→创建类型/对象;长参数列表(超3-4个、参数相关)→引入参数对象;数据泥团(相同变量多处出现)→提取类;注释(说明做什么:复杂表达式)→提取变量;注释(代码块)→提取方法;注释(方法用途名称不清)→重命名方法;注释(前置条件)→引入断言;注释(行为)→编写测试。
不应重构的情况:确需多行的复杂算法(有清晰注释说明原因)、配置对象或测试数据等声明式结构、即将替换的临时代码、一次性工具、仍在变动的不稳定代码、对速度有害的性能关键路径(需先剖析)、无测试代码、仅两处相似代码(三次法则)。核心自问:这种复杂度是服务于代码目的,还是遮蔽了它?