重构过程中,我们经常会使用Extract Method,当被抽取的函数局部变量繁杂时,Extract Method往往难以进行...
这时候我们可以使用Replace Method with Method Object来简化分析局部变量的工作。
其核心思想是使用类的成员属性保存变量,以达到在对象范围内变量的使用,而不用在函数间传递。
需要做的工作,有以下几步。
1.创建新对象,域中包含被抽取方法对象的引用和抽取函数中所有涉及到的局部变量
2.新建一个方法,并命名,将被抽取函数所有内容移至该函数内
3.在被抽取函数体内实例化新对象,并掉用其新建的方法
finally,
在新建的对象内,对新建的函数进行Extract Method,由于有成员属性的保障,使重构异常容易
这时候我们可以使用Replace Method with Method Object来简化分析局部变量的工作。
其核心思想是使用类的成员属性保存变量,以达到在对象范围内变量的使用,而不用在函数间传递。
需要做的工作,有以下几步。
1.创建新对象,域中包含被抽取方法对象的引用和抽取函数中所有涉及到的局部变量
2.新建一个方法,并命名,将被抽取函数所有内容移至该函数内
3.在被抽取函数体内实例化新对象,并掉用其新建的方法
finally,
在新建的对象内,对新建的函数进行Extract Method,由于有成员属性的保障,使重构异常容易