zoukankan      html  css  js  c++  java
  • 学习笔记——模板模式Template

    模板模式,主要是利用多态来实现具体算法和父类逻辑的松耦合。父类中TemplateMethod内部定义了相应的算法操作顺序,子类负责实现相应的具体实现。

    举例:

    项目中曾遇到过一个需求,叫做高级价格体系。它对外的调用接口一致,只是在不同的应用场景下(比如普通消费和会员卡消费)计算方法有差异,简化计算流程:

    1.初始化相应数据A()

    2.执行价格计算B()

    3.计算完成后的提示C()

    等。

    父类中的接口函数Run()将此顺序固定为:

    Run()

    {

    A();

    B();

    C();

    }

    不同场景下的子类,各自实现自己的ABC即可,不用关心调用顺序。

    进一步,核心算法B在所有场景下都是一致的,这时,可以将B()设置为private,让子类不用再实现。

  • 相关阅读:
    软链接和硬链接
    Hive的基本常识
    Hadoop
    Docker技术
    人生苦短,我用Python(6)
    人生苦短,我用Python(5)
    人生苦短,我用Python(4)
    openssl telnet openssh
    iptables
    http与httpd
  • 原文地址:https://www.cnblogs.com/dev2007/p/4178608.html
Copyright © 2011-2022 走看看