策略模式和模板方法模式的区别

策略模式:定义了一组算法,将每个算法都封装起来,并且使它们之间可以互换。
模板方法模式:模板的价值就在于骨架的定义,骨架内部将问题处理的流程已经定义好,通用的处理逻辑一般由父类实现,个性化的处理逻辑由子类实现。

策略模式核心在使用者的策略,按照自己的策略去替换。模板方法模式核心在子类的怎么实现。

这两个差不多是一样的,只是策略模式是将一整个流程给替换了,
而模板方法模式则是替换流程中部分特定内容。在这一整个流程中,已经定义了骨架,比如执行顺序、执行方法,其中共同部分由父类实现,只有个性化的操作延迟到了子类实现。

猜你喜欢

转载自blog.csdn.net/weixin_43871678/article/details/112393569
今日推荐