简化条件表达式相关重构手法express
1.decompose conditional(分解条件表达式)(你有一个复杂的条件if then else语句,从if then else 中提炼出独立的函数)函数
如测试
2.consolidate conditional expression(合并条件表达式)(你有一系列的条件 测试都获得相同的结果。把这些测试合并为一个条件表达式,并将这个条件表达式提炼为一个独立的函数)spa
3.consolidate duplicate conditional fragments(合并重复的条件片断)(在条件表达式的每一个分支上有着相同的一段代码。把这段成都代码搬移到条件表达式以外)对象
4.remove control flag(移除控制标记)(在一系列布尔表达式中,某个变量带有控制标记的做用。以break 或者 retuern 代替控制标记)rem
如it
5.replace nesten conditional with guard clauses(用 卫语句取代嵌套条件表达式。函数中的条件逻辑令人难以看清正常的执行路径。使用卫语句来表现全部特殊状况)io
如变量
6.replace conditional with polymorphism(多态替代条件表达式)(你有个条件表达式 他们根据对象类型 的不一样而选择不一样的行为。把这个条件表达式的每一个分支放进一个子类内的重写函数中,而后把原始的函数申明为一个抽象函数)重构
7.introduce null object(引入null对象)(你须要再三检查某对象是否为null。把null值替换为null对象)
8.introduce assertion(引入断言)(某一段代码须要对程序状态作出某种假设。用断言来表现这种假设)