重新组织你的函数
在对象之间搬移特性
重新组织数据
简化条件表达式
简化函数调用
处理概括关系
提炼函数1
转化后:
提炼函数2:清除注释
转化后:
将临时变量内联化:
转化后:
以查询取代临时变量:
转化后:
引入解释性变量:
转化后:
剖解临时变量:
转化后:
移除对参数的赋值:
转化后:
提前退出函数:
转化后:
Split Loop:
转化后:
Split Loop-2
在对象之间搬移特性:
搬移函数(Move Method)
搬移值域(Move Field)
提炼类(Extract Class)
将类内联化(Inline Class)
隐藏[委托关系](Hide Delegate)
移除中间人(Remove Middle Man)
引入外加函数(Introduce Foreign Method)
引入本地扩展(Introduce Local Extension)
分解表达式:
转化后:
Remove Double Negative
if ( !item.isNotFound() )
if ( item.isFound() )