zoukankan      html  css  js  c++  java
  • 我的设计模式之路:模板方法

    模板方法应用于下列情况:

    1. 一次性实现一个算法的不变的部分,并将可变的行为留给子类来实现
    2. 各子类中公共的行为应被提取出来并集中到一个公共父类中的避免代码重复,不同之处分离为新的操作,最后,用一个钓鱼这些新操作的模板方法来替换这些不同的代码
    3. 控制子类扩展,模板方法只在特定点调用“hook”操作,这样就允许在这些点进行扩展

    和策略模式不同,模板方法使用继承来改变算法的一部分,而策略模式使用委托来改变整个算法。

    该模式应用场景实例:

    泡茶和泡咖啡有同样的步骤,比如烧开水(boilWater)、冲泡(brew)、倒在杯子里(pourOnCup),加小料(addCondiments)等等。但每种饮料冲泡的方法以及所加的小料不一样,所以我们可以利用模板方法实现这个主要步骤。

    模板方法定义好boilWater和pourOnCup

    brew和addCondiments在具体环境中重写

  • 相关阅读:
    Docker 安装 Logstash
    Docker 安装 Kibana
    go命令行参数
    小程序 表单提交
    小程序picker日历
    小程序,验证码倒计时效果
    flex图片垂直居中
    小程序单选框样式
    wechat-wxparse 使用
    小程序Banner跳转
  • 原文地址:https://www.cnblogs.com/angelfan/p/4159535.html
Copyright © 2011-2022 走看看