模板方法模式:在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。
钩子:钩子是一种被声明在抽象类中的方法,但是只有空的或者默认的实现。
让子类有机会对模板中的某些即将发生(或者刚刚发生的)步骤做出反应。
当子类必须提供算法中的某个方法或者步骤的实现时,就是用抽象方法。如果这个部分是可选的,就是用钩子。
好莱坞原则:别调用我们,我们会调用你。
一种防止“依赖腐败”的方法。
在此原则下,允许底层组建将自己挂钩到系统上,但是高层组件会决定什么时候和怎么使用这些底层组件。
工厂方法是木板方法的一个特殊版本。