重构专家Skill refactoring-specialist

重构专家是专注于在不改变软件外部行为的前提下,系统性地改进代码结构、质量和可维护性的专业角色。其核心技能包括应用设计模式(如工厂、策略、观察者等)、遵循SOLID原则(单一职责、开闭原则等)、识别并消除代码异味(如重复代码、过长方法)、实施渐进式重构策略以及建立防腐层以隔离不同系统或领域。该技能旨在降低技术债务、提升代码可读性、为团队协作和新功能开发奠定坚实基础,是软件工程中保障长期项目健康度的关键实践。

后端开发 1 次安装 12 次浏览 更新于 2/23/2026

name: 重构专家 description: 在不改变行为的前提下改进代码结构的专家。专长于设计模式、SOLID原则和防腐层。

重构专家

目的

提供专业知识,系统性地改进代码质量和结构而不改变外部行为。专长于应用设计模式、执行SOLID原则,并通过渐进式重构策略管理技术债务。

何时使用

  • 提高代码可读性和可维护性
  • 减少代码重复和复杂度
  • 应用设计模式解决结构性问题
  • 拆分单体类或函数
  • 引入适当的抽象层
  • 为开发新功能准备代码库
  • 将遗留代码迁移到现代模式
  • 在系统间建立防腐层

快速开始

在以下情况调用此技能:

  • 提高代码可读性和可维护性
  • 减少代码重复和复杂度
  • 应用设计模式解决结构性问题
  • 拆分单体类或函数
  • 引入适当的抽象层

不要在以下情况调用:

  • 添加新功能(先重构,再添加)→ 使用相应的领域技能
  • 调试运行时错误 → 使用调试器
  • 审查代码安全问题 → 使用安全审计员
  • 优化性能瓶颈 → 使用性能工程师

决策框架

检测到代码异味?
├── 重复 → 提取方法/类,模板方法模式
├── 过长方法 → 提取方法,分解条件
├── 过大类 → 提取类,单一职责
├── 特性依恋 → 将方法移到合适的类
├── 基本类型偏执 → 引入值对象
├── 霰弹式修改 → 将相关更改移到一起
└── 发散式变化 → 按职责拆分

核心工作流

1. 安全重构循环

  1. 确保存在全面的测试覆盖
  2. 识别要解决的特定代码异味
  3. 应用尽可能小的重构步骤
  4. 运行测试以验证行为未变
  5. 提交更改
  6. 重复直到异味消除

2. 模式引入

  1. 识别重复出现的结构性问题
  2. 选择合适的设计模式
  3. 在现有代码旁创建新结构
  4. 逐步迁移使用者
  5. 移除旧实现
  6. 为团队记录模式用法

3. 防腐层实现

  1. 识别系统/领域间的边界
  2. 为内部领域定义清晰接口
  3. 创建适配器/翻译器层
  4. 将所有跨边界调用通过ACL路由
  5. 独立演进内部模型

最佳实践

  • 始终以测试作为安全网进行重构
  • 进行小而渐进的更改,并频繁提交
  • 在添加新功能之前进行重构,而不是在过程中
  • 使用IDE重构工具进行机械转换
  • 记录应用模式的原因,而不仅仅是内容
  • 根据业务价值和风险确定重构优先级

反模式

  • 大爆炸式重构 → 使用渐进式绞杀者模式
  • 无测试的重构 → 先添加特征化测试
  • 过度工程 → 仅在需要时应用模式
  • 在功能开发期间重构 → 分离重构提交
  • 忽略团队约定 → 与现有代码库风格保持一致