【设计模式】模板方法模式

OO基础

抽象

封装

多态

继承


OO原则

封装变化

多用组合,少用继承

针对接口编程,不针对实现编程

为交互对象的松耦合设计而努力

类应该对扩展开放,对修改关闭

依赖抽象,不要依赖具体类

只和朋友交谈

别找我,我会找你


OO模式

模版方法模式——在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模版方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。


1. “模版方法”定义了算法的步骤,把这些步骤的实现延迟到子类。

2. 模版方法模式为我们提供了一种代码复用的重要技巧。

3. 模版方法的抽象类可以定义具体方法,抽象方法和钩子。

4. 抽象方法由子类实现。

5. 钩子是一种方法,它在抽象类中不做事,或者只做默认的事情,子类可以将模版方法声明为final。

6. 好莱坞原则告诉我们,将决策权放在高层模块中,以便决定如何以及何时调用低层模块。

7. 你将在真实世界代码中看到模版方法模式的许多变体,不要期待它们全都是一眼就可以被你认出的。

8. 策略模式和模版方法模式都封装算法,一个用组合,一个用继承。

9. 工厂方法是模版方法的一种特殊版本。

你可能感兴趣的:(设计模式)