提炼函数(Extract Method)
现象:有一段代码可以被组织在一起并独立出来
重构动机:粒度小的函数,复用性比较高;会使得高层函数看起来就像注释一样;细粒度的函数,复写起来比较容易
做法:根据函数的意图来命名新的函数,重点在于能否取出一个有意义的名字。
内联函数(Inline Method)
现象:一个函数的本体与名称同样清楚易懂
重构动机:非必要的间接性会带来非必要的复杂度
做法:在函数调用点插入函数本体,然后移除该函数
内联临时变量(Inline Temp)
现象:一个临时变量只被一个简单表达式赋值一次,而它妨碍了其他重构手法
重构动机:动机不强烈,妨碍了其他重构手法时需要内联
做法:将所有对该变量的引用动作,替换为对它赋值的那个表达式本身
以查询取代临时变量(Replace Temp with Query)
现象:程序以一个临时变量保存保存某一表达式的运算结果
重构动机