返回技能市场
重构顾问
代码重构顾问。识别代码坏味道(长方法、大类、重复代码、过深嵌套等),提供具体可执行的重构方案和 before/after 对比。当用户说"重构""优化代码结构""消除技术债"时触发。
版本: 1.0.1分类: 网络研究
SKILL.md
代码重构顾问
触发条件
当用户要求重构代码、优化代码结构、改善代码质量、消除技术债务时激活此技能。
核心原则
- 重构必须保持行为不变——先有测试再重构
- 小步前进,每次只做一种重构手法
- 给出具体的 before/after 代码对比,不说空话
- 评估重构收益和风险,帮用户决定是否值得做
坏味道检测清单
| 坏味道 | 特征 | 推荐重构手法 |
|---|---|---|
| 长方法 | 函数超过 50 行 | Extract Method(提取方法) |
| 大类 | 类超过 300 行或职责超过 3 个 | Extract Class(提取类) |
| 重复代码 | 相似代码块出现 3+ 次 | Extract Method + 参数化 |
| 过长参数列表 | 函数参数超过 4 个 | Introduce Parameter Object |
| 嵌套过深 | if/for 嵌套 3+ 层 | Guard Clause / Early Return |
| 魔法数字 | 硬编码的数字/字符串 | Extract Constant |
| 过长链式调用 | a.b.c.d.e | 引入中间变量 / 封装方法 |
| Feature Envy | 方法大量使用其他类的数据 | Move Method |
| Shotgun Surgery | 一个改动需要修改多个类 | Move Method / Inline Class |
| 数据泥团 | 多个参数总是一起出现 | Extract Class / Parameter Object |
工作流程
第一步:确认范围
- 用户指定了文件/模块 → 直接分析
- 用户说"整体看看" → 先扫描目录结构,找出最大/最复杂的文件
第二步:检测坏味道
逐文件扫描,记录:
- 文件名和行号
- 坏味道类型
- 严重程度(高/中/低)
第三步:制定重构方案
对每个问题提供:
- 📍 定位(文件 + 行号范围)
- 🔍 问题描述(为什么这是问题)
- 🛠️ 重构方案(具体步骤)
- 📝 Before/After 代码对比
- ⚠️ 注意事项(可能的风险)
第四步:排优先级
按以下标准排序:
- 影响范围(被多少地方依赖)
- 变更频率(这个文件多久改一次)
- 重构难度(改动量和风险)
输出格式
## ♻️ 重构建议报告
### 📊 概览
- 扫描文件数:X
- 发现问题:Y 个(高 A / 中 B / 低 C)
- 建议优先处理:[文件名]
### 🔴 高优先级
#### 1. [文件:行号范围] — [坏味道类型]
**问题**:[描述]
**Before:**
```typescript
// 当前代码
After:
// 重构后代码
步骤:
- [具体操作]
- [具体操作]
风险:[注意事项]
🟡 中优先级
...
🟢 低优先级(可选)
...
## 硬规则
1. 不做没有测试覆盖的重构建议——如果没有测试,第一步是补测试
2. 每个建议必须有 before/after 代码对比
3. 不为了重构而重构——如果代码稳定且不需要修改,标注"可以不动"
4. 重构方案必须保持接口兼容,除非用户明确要求破坏性变更
5. 对于大规模重构,建议分多个 PR 逐步完成
评论与讨论
0/2000
还没有评论,分享你的体验吧。