重构读书笔记-11_1-Pull_Up_Feild

重构第十一章

1.Pull Up Field(值域上移)

两个subclasses拥有相同的值域,将此一值域移至superclass。

Example:

class Salesman extends Employee:
    private string name;
class Employee extends Employee:
    private string name;

End:

class Employee...
    private string name
class Salesman extends Employee...
class Employee extends Employee...

Conclusion:

在各个subclass中,可能会有重复的特性,如果这些重复特性的使用方法很相似,可以使用Pull Up Field(值域上移)方法,将它们归纳到superclass中。
本项重构减少重复代码:首先去除了[重复的数据声明];其次可以去除重复使用该值域的行为,从而去除[重复的行为]。

注意

重构必须在有单元测试的情况下,保证之前的功能修改后不收影响。切记!!!

你可能感兴趣的:(重构读书笔记-11_1-Pull_Up_Feild)