一、Extract Method

状况:我看见一个过长的函数或者需要一段注释才能让人理解用途的代码,那么将这段代码放进一个独立函数中,并让函数名称解释改函数的用途。
重构 重新组织你的函数
重构 重新组织你的函数
重构 重新组织你的函数
 

二、Inline Method

Method Body与Method Name一样清晰易懂的时候,请Inline Method。
重构 重新组织你的函数
重构 重新组织你的函数
重构 重新组织你的函数
 

三、Inline Temp

一个临时变量,只被一个简单表达式赋值一次,而且赋值完也只使用了一次。
重构 重新组织你的函数
重构 重新组织你的函数
重构 重新组织你的函数
 

四、Replace Temp with Query

如果一个Temp变量,保存一个表达式,将这个表达式Extract Method。——这就是所谓的查询式
重构 重新组织你的函数
重构 重新组织你的函数
重构 重新组织你的函数

五、Introduce Explaining Variable

将复杂表达式中(或其中一部分)的结果放进一个临时变量,以此变量名称来解释表达式用途。
重构 重新组织你的函数
重构 重新组织你的函数
重构 重新组织你的函数

六、Split Temporator Variable

某个临时变量被赋值超过一次,它既不是循环变量,也不是集合变量。那么针对每次赋值,创造一个独立的,对应的临时变量。
重构 重新组织你的函数
重构 重新组织你的函数
重构 重新组织你的函数

七、Remove Assignments To Parameters

 如果你的代码对参数进行赋值,那么以一个临时变量取代该参数的位置
重构 重新组织你的函数
重构 重新组织你的函数
重构 重新组织你的函数

八、Replace Method with Method Object

大型函数对局部变量的使用无法采用Extract Method。那么将这个Method放进一个单独对象中,如此一来,让局部变量成为对象的filed,然后在同一个对象中将大型函数分解为数个小型Method
重构 重新组织你的函数
重构 重新组织你的函数
重构 重新组织你的函数
 

相关文章: