重构条件-Introduce Assertion引入断言八 1.引入断言 1.1.使用场景 某一段代码需要对程序状态做出某种假设。以断言明确表现这种假设 常常会有这样一段代码:只有当某个条件为真时,该…
重构条件-Introduce Null Object引入Null 对象七 1.引入Null 对象 1.1.使用场景 你需要再三检查某对象是否为null。将null值替换为null对象。 多态的最根本好…
重构条件-Replace Conditional with Polymorphism以多态取代条件式六 1.1.使用场景 你手上有个条件表达式,它根据对象类型的不同而选择不同的行为。 将这个条件表达式…
重构条件-Replace Nested Conditional with Guard Clauses以卫语句取代嵌套条件式五 1.以卫语句取代嵌套条件式 1.1.使用场景 函数中的条件逻辑使人难以看清…
重构条件-Remove Control Flag移除控制标记四 1.移除控制标记 1.1.使用场景 在一系列布尔表达式中,某个变量带有“控制标记”(control flag)的作用。以break语句或…
重构条件-Consolidate Duplicate Conditional Fragments合并重复的条件片段三 1.合并重复的条件片段 1.1.使用场景 在条件表达式的每个分支上有着相同的一段代…
重构条件-Consolidate Conditional Expression合并条件式二 1.合并条件式 1.1.使用场景 你有一系列条件测试,都得到相同结果。将这些测试合并为一个条件表达式,并将这…
重构条件-Decompose Conditional分解条件式一 1.分解条件式 1.1.使用场景 你有一个复杂的条件(if-then-else)语句。从if、then、else三个段落中分别提炼出独…