模板模式 定义 模板方法模式在一个方法中定义一个算法骨架,并将某些步骤推迟到子类中实现。模板方法模式可以让子类在不改变整体算法骨架的前提下,重新定义算法中的某些步骤。(该算法可以理解为业务逻辑) 应用场景 扩展 框架通过模板模式提供功能的扩展点,让框架用户在不修改框架源码的情况下,基于扩展点定制化框架的功能。 复用 所有子类可以复用父类中提供的模板方法的代码。 与回调的区别 同步回调 回调基于组合关系来实现,把一个对象传递给另一个对象,是一种对象之间的关系。模板是基于继承关系来实现,子类重写父类的抽象方法,是一种类之间的关系。 异步回调 更类似观察者模式。