代码重构技术有哪些

参考

《重构-改善代码设计》

《重构与模式》

一、代码结构优化类

  1. 提炼方法(Extract Method)
    将重复代码或复杂逻辑块封装为独立函数
  2. 合并重复代码
    消除跨模块/函数的重复逻辑(例如通过工厂模式统一对象创建)
  3. 拆分循环(Split Loop)
    将多职责循环拆分为多个独立循环
  4. 管道替代循环(Replace Loop with Pipeline)
    使用filter/map等集合管道操作替代传统迭代

二、条件与数据优化类

  1. 卫语句(Guard Clauses)
    用提前返回替代多层嵌套条件
  2. 消除魔法数字
    将硬编码常量替换为常量或配置参数
  3. 引入参数对象(Introduce Parameter Object)
    将结伴而行的参数组织成数据结构

三、类与对象设计类

  1. 提炼类(Extract Class)
    拆分职责过重的类或组件
  2. 以多态取代条件(Replace Conditional with Polymorphism)
    用子类实现行为差异而非if-else判断
  3. 函数组合成类(Combine Functions into Class)
    将频繁操作同一数据的函数组合成类

四、命名与可读性优化类

  1. 重命名(Rename Method/Variable)
    使用自解释性名称(如将data改为userProfileList)
  2. 引入解释性变量(Introduce Explaining Variable)
    将复杂表达式分解为中间变量

五、系统级重构类

  1. 工厂函数替代构造函数
    规避构造函数限制,实现更灵活的对象创建
  2. 双向依赖转单向
    优化类间通信方向
  3. 绞杀者模式
    通过逐步构建新服务替代遗留系统
posted @ 2025-07-24 10:37  yuxuan0802  阅读(33)  评论(0)    收藏  举报