当前位置: 首页 > 后端技术 > PHP

我理解的模板方法模式

时间:2023-03-29 20:24:22 PHP

定义了在父类中定义处理流程的框架,在子类中实现具体处理的模式称为模板方法模式。抽象类(AbstractClass)不仅负责实现模板方法,还负责声明模板方法中使用的抽象方法。具体类(子类)该角色负责具体实现抽象类角色中定义的抽象方法。这里实现的方法会在抽象类角色的模板方法中调用。优点封装不变部分,扩展可变部分提取公共部分代码,方便维护行为由父类控制,子类负责实现使用场景多个子类有公共方法,逻辑基本一致重要且复杂的算法,核心算法可以集成设计成模板方法,周边函数的相关细节由每个子类重构。模板方法是经常使用的方法,将相同的代码提取到父类中,然后通过构造函数代码示例对其行为进行约束#abstractClassAbstractClass.phpoperate1();$this->operate2();}/***操作1*@returnmixed*/抽象保护函数operate1();/***操作2*@returnmixed*/抽象保护函数operate2();}#具体类1ConcreteClassOne.php