<b>概念:</b>本文中的“提取方法对象”是指当你发现一个方法中存在过多的局部变量时,你可以通过使用“提取方法对象”重构来引入一些方法, 每个方法完成任务的一个步骤,这样可以使得程序变得更具有可读性。
<b>正文:</b>如下代码所示,Order 类 中的Calculate方法要完成很多功能,在之前我们用“提取方法”来进行重构,现在我们采取“提取方法对象”来完成重构。
正如下代码所示,我们引入了OrderCalculator类,该类实现了所有的计算方法,Order类将自身传递给 OrderCalculator类并调用Calculate方法完成计算过程。
<b>总结:</b>本文的重构方法在有的时候还是比较有用,但这样会造成字段的增加,同时也会带来一些维护的不便,它和“提取方法”最大的区别就 是一个通过方法返回需要的数据,另一个则是通过字段来存储方法的结果值,所以在很大程度上我们都会选择“提取方法”。
本文转自KnightsWarrior51CTO博客,原文链接: http://blog.51cto.com/knightswarrior/342460,如需转载请自行联系原作者