之前分享过创建型、结构型的设计模式了,从这章开始分享行为型设计模式,那么在讲模版方法模式前,我们可以先聊一下什么是行为型,其实在刚开始介绍设计模式也大概介绍过三种类型的关注点是什么。
行为型设计模式(Behavioral Design Patterns)关注对象之间的行为和交互(关注怎么互动),主要解决以下问题:
-
关注流程控制:行为型设计模式关注算法的步骤和执行顺序,通过定义算法的骨架来控制流程。
-
算法的实现:定义和封装算法,使其可以在不同的上下文中使用。
-
对象之间的通信:定义对象之间的通信方式,确保对象之间的交互是松耦合的。
-
行为的封装和组合:将行为封装在对象中,使得行为可以灵活地组合和扩展。
这里只是简单介绍一下行为模式,大家可能还很懵逼,下面就借具体每一个设计模式进行介绍,大家可以自行感知其和创建型、结构型的不同。
一、什么是模版方法模式
今天爸爸在看电视没有烟抽了,也快吃饭了没有酒喝了。这个时候 爸爸把你叫过来,来给你30块钱,你给我去买个烟,在买个酒, 剩下的钱你自己支配。
这个例子就是模板方法模式,它通过在抽象类中定义一个算法的骨架,将一些步骤延迟到子类中实现,从而在不改变算法结构的情况下,允许子类重新定义算法中的某些步骤。