章节六 重新组织你的函数
- Extract Method(提炼函数)
- Inline Method(将函数内联化)
- Inline Temp(将临时变量内联化)
- Replace Temp with Query(以查询取代临时变量)
- Introduce Explaining Variable(引入解释性变量)
- Split Temporary Variable(剖解临时变量)
- Remove Assignments to Parameters(移除对参数的赋值动作)
- Substitute Algorithm (替换你的算法)
章节七 在对象之间搬移特性
- Move Method (搬移函数)
- Move Field (搬移值域)
- Extract Class (提炼类)
- Inline Class (将类内联化)
- Hide Delegate (隐藏[委托关系])
- Remove Middle Man (移除中间人)
- Introduce Foreign Method (引入外加函数)
- Introduce Local Extension (引入本地扩展)
章节九 简化条件表达式
- Decompose Conditional (分解条件式)
- Consolidate Conditional Expression (合并条件式)
- Consolidate Duplicate Conditional Fragments (合并重复的条件片段)
- Remove Control Flag (移除控制标记)
- Replace Nested Conditional with Guard Clauses (以卫语句取代嵌套条件式)
- 何为卫语句?
条件通常有两种呈现形式。第一种形式是:所有分支都属于正常行为。第二种形式是:条件式提供的答案中只有一种是正常行为,其他都是不常见的情况。
如果两条分支都是正常行为,就应该使用形如[if...then...]的条件式;如果某个条件极其罕见,就应该单独检查该条件,并在该条件为真时立刻从函数返回。 这样的单独检查常常被称为[卫语句(guard clauses)]。
- 何为卫语句?
- Replace Conditional with Polymorphism (以多态取代条件式)
- 如何实现?
- Introduce Null Object (引入Null对象)
- 如何实现?
- Introduce Assertion (引入断言)
网友评论