坏味 | 重构 |
重复代码 | 形成Template Method 用Factory Method引入多态创建 链构造函数 用Composite替换一/多之分 提取Composite 通过Adapter统一接口 引入Null Object |
过长函数 | 组合方法 将聚集操作搬移到Collection Parameter 用Command替换条件调度程序 将聚集操作搬移到Visitor 用Strategy替换条件逻辑 |
条件逻辑太复杂 | 用Strategy替换条件逻辑 将装饰功能搬移到Decorator 用State替换状态改变条件语句 引入Null Object |
基本类型偏执 | 用类替换类型代码 用State替换状态改变条件语句 用Strategy替换条件逻辑 用Composite替换隐含树 用Interpreter替换隐式语言 将装饰功能搬移到Decorator 用Builder粉状Composite |
不恰当的暴露 | 用Factory封装类 |
解决方案的蔓延 | 将创建知识搬移到Factory |
异曲同工的类 | 通过Adapter统一接口 |
冗赘类 | 内联Singleton |
过大的类 | 用Command替换条件调度程序 用State替换状态改变条件语句 用Interpreter替换隐式语言 |
分支语句 | 用Command替换条件调度程序 将聚集操作搬移到Visitor |
组合爆炸 | 用Interpreter替换隐式语言 |
怪异解决方案 | 通过Adapter统一接口 |
代码坏味
最新推荐文章于 2022-06-28 10:22:18 发布