• [Design] Command Pattern


      行为模式主要是责任和算法的抽象化。行为模式不仅仅是关于类和对象的,而且是关于它们之间的相互作用的。
      行为模式分为类的行为模式和对象的行为模式两种。
    类的行为模式
        类的行为模式使用继承关系在几个类之间分配行为。
    对象的行为模式
        对象的行为模式则使用对象的聚合来分配行为。
    --------------------------------------------------------
    命令模式

    命令模式是对象的行为模式。以称为行动模式或交易模式。

    命令模式把一个请求或者操作封装到一个对象中,命令模式允许系统使用不同的请求把客户端参数化,对请求排队或者记录请求日志,可以提供命令的撤销和恢复功能。

     

    结构及角色

    • 1、客户(Client)角色

    创建一个具体命令对象并确定其接收者。

    • 2、抽象命令(Command)角色

    声明所有具体命令角色必须实现的接口,一般由抽角类或接口实现。

    • 3、具体命令(Concrete Command)角色

    实现抽象命令角色所声明的接口。并定义一个接收者和行为之间的弱耦合,负责调用接收者的相应操作。

    • 4、请求者(Invoker)角色

    负责调用命令对象执行请求,相关的方法叫做行动方法。

    • 5、接收者(Receiver)角色

    负责具体实施和执行一个请求。任何一个类都可以成为接收者,实施和执行请求的方法叫做行动方法。

  • 相关阅读:
    入门菜鸟
    FZU 1202
    XMU 1246
    Codeforces 294E Shaass the Great 树形dp
    Codeforces 773D Perishable Roads 最短路 (看题解)
    Codeforces 814E An unavoidable detour for home dp
    Codeforces 567E President and Roads 最短路 + tarjan求桥
    Codeforces 567F Mausoleum dp
    Codeforces 908G New Year and Original Order 数位dp
    Codeforces 813D Two Melodies dp
  • 原文地址:https://www.cnblogs.com/abeen/p/1441894.html
Copyright © 2020-2023  润新知