赞
踩
曾用名:以数据类取代记录(Replace Record withData Class)
时机:
曾用名:以对象取代数据值(Replace Data Value with Object)
曾用名:以类取代类型码(Replace Type Code with Class)
时机
反向重构:内联类
时机
反向重构:提炼类
时机
反向重构:移除中间人
时机
反向重构:隐藏委托关系
时机
曾用名:搬移函数(Move Method)
时机
反向重构:搬移语句到调用者
时机
反向重构:搬移语句到函数
时机
曾用名:合并重复的代码片段(Consolidate Duplicate Conditional Fragments)
时机
曾用名:移除对参数的赋值(Remove Assignments to Parameters)
曾用名:分解临时变量(Split Temp)
时机
反向重构:将值对象改为引用对象
时机
值对象:a.b=new b(1)
引用对象:a.b.c=1
反向重构:将引用对象改为值对象
时机
曾用名:引入Null对象(Introduce Null Object)
时机
从一个作为容器的数据结构(或者类)开始,其中包含一个属性,该属性就是我们要重构的目标。容器的客户端每次使用这个属性时,都需要将其与某个特例值做比对。我们希望把这个特例值替换为代表这种特例情况的类或数据结构。
因为断言应该不会对系统运行造成任何影响,所以“加
入断言”永远都应该是行为保持的。
曾用名:令函数携带参数(Parameterize Method)
时机
曾用名:以明确函数取代参数(Replace Parameter with Explicit Methods)
时机
曾用名:以函数取代参数
反向重构:以参数取代查询
时机
反向重构:以查询取代参数
时机
曾用名:以工厂函数取代构造函数(Replace Constructor with Factory Method)
动机
曾用名:以函数对象取代函数(Replace Method With Method Object)
反向重构:以函数取代命令
时机
反向重构:以命令取代函数
时机
反向重构:函数下移
时机
反向重构:字段下移
时机
反向重构:函数上移
时机
反向重构:字段上移
动机
包含旧重构:以State/Strategy取代类型码(Replace Type Code with State/Strategy)
包含旧重构:提炼子类(Extract Subclass)
反向重构:移除子类
时机
-做法
曾用名:以字段取代子类(Replace Subclass with Fields)
反向重构:以子类取代类型码
时机
曾用名:以委托取代继承(Replace Inheritance with Delegation)
时机
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。