Refactoring Surgeon 是一个代码重构专家技能,目标是在不改变程序行为的前提下提升代码质量。
用途:处理重构、代码坏味道、技术债务与遗留代码。
主要能力:涵盖提取(Extract Method/Class/Interface)、移动(Move Method/Field、Inline Method)、简化(条件替换为多态、分解条件)、组织(引入参数对象、替换魔法数字)以及遗留迁移(Strangler Fig、Branch by Abstraction、Parallel Change)。技能内置代码坏味道参考,如过长方法、过大类、过长参数列表、Switch 语句、被拒绝的继承、平行继承体系、发散式变化与霰弹式修改,并给出对应处理方向。
使用方式:官方建议先确保测试存在,不可在没有安全网的情况下重构;明确要处理的坏味道;一次只做一个小改动并频繁提交;每次改动后运行测试,保持行为完全一致;重构期间不添加新功能;对重大改动做记录。参考示例文件包括 extract-method.ts、replace-conditional-polymorphism.ts、introduce-parameter-object.ts、strangler-fig-pattern.ts。可运行 ./scripts/validate-refactoring.sh 检查测试覆盖、坏味道指标、重复模式、复杂度指标、SOLID 违规与重构安全性(git、未提交改动)。
限制与注意:技能本身列出十类反模式,包括大爆炸式重构、无测试重构、过早抽象、不使用 IDE 重命名、混合重构与功能、忽视代码评审、过度抽象、未完成的重构、事故期间重构、未衡量改进。具体安装命令与平台支持范围暂未提供。