美文网首页
命令模式(行为型)

命令模式(行为型)

作者: 打不过猫的鱼 | 来源:发表于2021-03-19 19:59 被阅读0次

    命令模式
    命令模式(Command Pattern)是一种数据驱动的设计模式,它属于行为型模式。请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令。

    维基上的解释:它尝试以对象来代表实际行动。命令对象可以把行动(action) 及其参数封装起来,于是这些行动可以被:

    • 重复多次
    • 取消(如果该对象有实现的话)
    • 取消后又再重做
      这些都是现代大型应用程序所必须的功能,即“撤销”及“重复”。
      除此之外,可以用命令模式来实现的功能例子还有:
    • 交易行为
    • 进度列
    • 向导
    • 用户界面按钮及功能表项目
    • 线程 pool
    • 宏收录

    优点

    1. 降低了系统耦合度。
    2. 新的命令可以很容易添加到系统中去。

    缺点

    使用命令模式可能会导致某些系统有过多的具体命令类。

    个人理解

    通过类的方法将执行的逻辑封装在方法中,这个类叫接收类,方法就是执行具体逻辑的方法,然后定义一个命令接口,有一个execute方法。命令的实现类,将接收类作为execute方法的入参,方法内容就是接收类调用自己的执行逻辑的方法,这个执行逻辑的方法与该命令类的含义相同(比如,开灯命令类,实现的execute方法里就是接收类调用开灯方法)。最后就是调用类,定义一个命令接口为入参的方法,内容是命令接口调用execute方法。

    相关文章

      网友评论

          本文标题:命令模式(行为型)

          本文链接:https://www.haomeiwen.com/subject/hqscqltx.html