- 7.1搬移函数 如果一个类有太多的行动,或者如果一个类与另一个类有太多合作而形成高度耦合。
做法:找到使用另一个对象的次数比使用自己所在类的对象的次数还多的函数,将其调用的字段和函数放在另一个类中。
- 7.2 搬移字段 某个字段被所驻类之类的对象使用更多,则将该字段移到其他调用类中
- 7.3 提炼类 对太复杂的类,负责太多,将其分离,子类化。
- 7.4 将类内联化 将类中的成员移到其他类,删除该类。该类不承担责任,可能是重构导致的
- 7.5 隐藏委托关系 在服务类上建立客户所需要的所有函数,用以隐藏委托关系 。即建立中间类,客户通过中间类来访问另一个对象
- 7.6 移除中间人 当某个类做了太多的简单委托动作,改为客户直接调用受托类
- 7.7 引入外加函数 当你要为提供服务的类增加函数但无法修改该类时,做法是在客户类中建立一个函数,并以第一参数形式传入一个服务类实例。
- 7.8 引入本地扩展 需要为服务类提供一些额外的函数但无法修改这个类 将这些函数封装在一个类里,让这个类成为服务类的子类或者包装类。