代码改变世界

重构 - 简化条件分支

2016-03-09 15:38  yoogo  阅读(317)  评论(0编辑  收藏  举报

 

Decompose Conditional  简化条件表达式

目的:把复杂的条件表达式抽成方法

 


Consolidate Conditional Expression

目的:合并多个行为相同的条件分支

 


Consolidate Duplicate Conditional Fragments

目的:去除在多个条件分支中相同的代码片段。 

 


Remove Control Flag

 

 


Replace Nested Conditional with Guard Clauses

目的:把嵌套的 if/else 改成同级别的

 


Replace Conditional with Polymorphism

 

 


Introduce Null Object

目的:不要return nulll,  return 一个返回类型的子类型,这个子类型代表 null 的行为。 

好处:把 null 对应的行为从客户端移动到类型之内,内聚;客户不用再做 null 检查。

 


Introduce Assertion