重构摘要7_在对象之间搬移特性

《重构-改善既有代码的设计》Martin Fowler 摘要: 第七章 在对象之间搬移特性

Move Method 搬移函数

你的程序中,有个函数与其所驻类之外的另一个类进行更多交流:调用后者,或被后者调用

在该函数最常引用的类中建立一个有着类似行为的新函数。将旧函数变成一个单纯的委托函数,或者将旧函数完全移除。

Move Field 搬移字段

某个字段被其所驻类之外的另一个类更多地用到。

如果我需要对类做许多处理,保持小步前进是有帮助的。

Extract Class 提炼类

某个类做了应该由梁格磊做的事。可以分别加锁。

  • 数据与某些函数总是一起出现
  • 子类化方式

Extract Class 是改善并发程序的一种常用技术。

Inline Class 将类内联化

某个类没有做太多事情

Hide Delegate 隐藏“委托关系”

客户通过一个委托类来调用另一个对象。

在服务类上建立客户所需要的所有函数,用以隐藏委托关系

Remove Middle Man 移除中间人

某个类做了过多的简单委托动作

让客户直接调用受托类(受托类特性越来越多)

Introduce Foreign Method 引入外加函数

你需要为提供服务的类增加一个函数,但你无法修改这个类

在客户类中建立一个函数,并以第一参数形式传入一个服务类实例。

Introduce Local Extension 引入本地扩展

你需要为服务类提供一些额外的函数,但你无法修改这个类

建立一个新类,使它包含这些额外函数。让这个扩展品成为源类的子类或包装类。

你可能感兴趣的:(java,重构,对象,摘要)