6.8 Replace Method with Meth

概括
          大型函数中对局部变量的使用使得无法采用Exrtact Method方法。
          将此函数放进一个单独对象中,此时局部变量就成了对象内的字段。然后可以在同一个对象中将这个大型函数分解为多个小型函数。
      例子
class Order{
    ...
    double price(){
        double primaryBasePrice;
        double secondaryBasePrice;
        double tertiaryBasePrice;
        //long computation;
        ...
    }
}

重构后
 

动机
          局部变量的存在会增加函数分解难度。如果一个函数中局部变量特别多,那么想分解这个函数是非常困难的。Replace Temp with Query可以帮助你减轻一些负担。
          
          使用情况:如果发现根本无法拆解一个函数,就使用本重构手法。
次重构手法会将所有局部变量都变成函数对象的字段。然后就可以对这个新对象使用Extract Method创造出新函数。
做法
.
实践
.




posted @ 2013-11-27 15:00  tanhaiyuan  阅读(145)  评论(0编辑  收藏  举报