关于 refactoring-code
面向开发者的重构技能,强调在保持行为不变的前提下,通过小步、测试验证来调整代码结构,并涵盖常见重构与安全规则。
主要功能
- 01变更前后运行测试
- 02用 Grep 检查依赖和引用
- 03分小步进行重构
- 04常见重构方法指导
- 05代码修改安全规则
适用场景
- 01从长代码块提取专用方法
- 02跨代码库重命名符号
- 03检查引用后删除代码
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ dralgorhythm/ claude-agentic-framework --skill refactoring-code安装后在 Claude Code 中输入/refactoring-code确认已加载。
详细介绍
重构代码
重构模式
重构时,只改变结构,不改变行为。始终确保修改前后测试都能通过。
工作流
- 测试通过:开始前确保所有测试都通过
- 分析:使用 Grep 了解依赖关系
- 小步进行:每次只做一项小改动
- 验证用法:修改前使用 Grep 查找所有用法
- 经常提交:每次重构成功后都提交
- 测试通过:每次修改后确认测试仍然通过
常见重构
提取方法
如果一段代码只做一件事,就将其提取为一个命名方法。
- 使用 Grep 确认提取不会影响调用方
- 提取方法
- 运行测试
重命名以提高清晰度
名称应该体现意图。
- 使用 Grep 查找所有用法
- 使用 Edit 的 replace_all 对整个代码库进行重命名
- 确认没有遗漏的引用
删除无用代码
- 使用 Grep 确认代码未被使用
- 如果没有引用,可以安全删除
- 如果存在引用,则追踪并了解其用法
需要处理的代码异味
- 过长的方法:提取较小的方法
- 参数列表过长:引入参数对象
- 重复代码:提取为共享函数(使用 Grep 查找重复代码)
- 特征依恋:将方法移到其最常使用的类中
- 数据泥团:将相关数据归为对象
- 基本类型偏执:用值对象替换基本类型
安全规则
- 绝不要同时进行重构和添加功能
- 删除或重命名前,始终使用 Grep 查找所有用法
- 每次修改后都运行测试
- 使用有针对性的 Edit 操作,而不是大范围查找替换
- 经常提交可正常运行的状态
评论
支持 Markdown