zoukankan      html  css  js  c++  java
  • 设计模式(十四):命令模式

    优点:

      ① 可降低 请求发送者与请求接收者之间的耦合

      ② 新增和删除Command对象变得容易,方便被操纵和扩展。

    缺点:

      ① 可能导致某些系统有过多的具体命令类,影响该模式效率。

    适用范围:

      系统需要将请求调用者和请求接收者解耦,使得调用者和接收者不直接交互。

    客户端:

      Chef chef = new Chef(); //厨师
      Command bakeChickenWingCommand = new BakeChickenWingCommand( chef ); //烤鸡翅
      Command bakeMuttonCommand = new BakeMuttonCommand( chef );//烤羊肉串

      Waiter girl = new Waiter();//服务员
      girl.setOrders(bakeMuttonCommand);//点烤羊肉串
      girl.setOrders(bakeChickenWingCommand); //点烤鸡翅
      girl.cancelOrder(bakeChickenWingCommand);// 取消点烤鸡翅

      girl.notifys(); //通知厨师做菜

            /**
             * Chef (厨师-执行命令,包括各做菜命令执行的方法,以备调用)
             *
             * Command (做菜命令接口,指定Chef、执行某个做菜命令的方法)
             * BakeMuttonCommand (烤羊肉串命令)  BakeChickenWingCommand (烤鸡翅命令)
             *
             * Waiter (服务员-传达命令,包括命令列表(订单)属性、订单新增命令、订单移除命令、通知厨师全部执行等方法)
             *
             */
  • 相关阅读:
    linux 下查看网速的方法 (不需要安装任何软件)
    Raspberry Pi Kernel Compilation 内核编译官方文档
    Kernel compiling for Pi 2
    从源码编译rpi的内核
    设备驱动调试和移植的一般方法
    爸爸的歌
    表扬?批评?
    日历插件js,jquery
    zepto jquery和zepto的区别?
    怎么学习PS快?
  • 原文地址:https://www.cnblogs.com/shushengyou/p/10248261.html
Copyright © 2011-2022 走看看