zoukankan      html  css  js  c++  java
  • 命令模式---行为型

    3 相关模式

    (1)命令模式和组合模式

         这两个模式可以组合使用。在命令模式中,实现宏命令的功能就可以使用组合模式来实现。前面的示例并没有按照组合模式来做,那是为了保持示例的简单,还有突出命令模式的实现,这点请注意。

    (2)命令模式和备忘录模式

         这两个模式可以组合使用。在命令模式中,实现可撤销操作功能时,前面讲了有两种实现方式,其中有一种就是保存命令执行前的状态,撤销的时候就把状态恢复。如果采用这种方式实现,就可以考虑使用备忘录模式。如果状态存储在命令对象中,那么还可以使用原型模式,把命令对象当作原型来克隆一个新的对象,然后将克隆出来的对象通过备忘录模式存放。

    (3)命令模式和模板方法模式

         这两个模式从某种意义上有相似的功能,命令模式可以作为模板方法的一种替代模式,也就是说命令模式可以模仿实现模板方法模式的功能。如同前面讲述的退化的命令模式可以实现Java的回调,而 Invoker智能化后向服务进化,如果 Invoker的方法就是一个算法骨架,其中有两步在这个骨架面没有具体实现,需要外部来实现,这个时候就可以通过回调命令接口来实现而类似的功能在模板方法中,是先调用抽象方法,然后等待子类来实现。可以看出虽然实现方式不一样,但是可以实现相同的功能。

    0

  • 相关阅读:
    vue之插槽
    微信公众号-关注和取消关注
    微信公众号-消息响应
    微信公众号-验证接入
    微信公众号-开发工具natapp内网穿透安装和使用
    windows安装PHP5.4+Apache2.4+Mysql5.5
    php各种主流框架的优缺点总结
    php框架的特性总结
    什么是php?php的优缺点有哪些?与其它编程语言的优缺点?
    二进制、八进制、十进制、十六进制之间转换
  • 原文地址:https://www.cnblogs.com/youngao/p/11401186.html
Copyright © 2011-2022 走看看