1 Tease Apart Inheritance(梳理并分解继承体系)
某个继承体系同时承担两项责任。
建立两个继承体系,并使用委托关系让其中一个可以调用另一个。
2 Convert Procedural Design to Objects(将过程化设计转换为对象设计)
你手上有一些传统过程化风格的代码。
将数据记录变为对象,将大块的行为拆分成小块,并将行为移动到对象中。
3 Separate Domain from Presentation(将领域和表述/显示分离)
某些GUI类之中包含了领域逻辑。
将领域逻辑分离出来,为它们建立独立的领域类。
4 Extract Hierarchy(提炼继承体系)
你有某个类做了太多工作,其中一部分工作是以大量的条件表达式来完成的。 建立继承体系,以一个子类来表示一种特殊情况。