模版方法模式

由固定步骤组成的事情,在步骤确定的情况下,通过多态在子类中对每步进行差异性实现

本文介绍模版方法模式

简介

模式名:模版方法模式

英文:template method

定义:由固定步骤组成的事情,在步骤确定的情况下,通过多态在子类中对每步进行差异性实现。

命名由来:某个成员方法,称为A,固定调用某几个成员方法,故称A为模版方法,这种方法叫做模版方法模式

意图:定义一个操作的算法骨架,将一些步骤延迟到子类实现,通过父类定义虚函数,子类重写/实现来做到

概念

早绑定与晚绑定

早绑定:编译阶段就知道代码调用的哪个类的方法

晚绑定:父类指针指向子类对象,运行期间才能知道调用哪种方法

钩子方法hook

子类可以控制父类的行为的方法

使用场景

MFC

MFC创建对话框的应用程序

车间

零件装配工序固定,则针对零件创建一个父类,零件装配工序采用模版方法模式来实现,处理某道工序的细节可以放在子类的虚函数中

相关模式


© 2023 github-lanyily. All rights reserved.

Powered by Hydejack v9.1.6