05-命令模式

意图(GOF定义)

将一个请求封装为一个对象,从而使你可用不同的请求对客户端进行参数化,对请求排队或者记录日志,以及可支持撤销的操作。

理解

命令模式就是把一些常用的但比较繁杂的工作归类为成一组一组的动作,每组动作对应着一个命令,用户不再去对每个动作进行调用,而是将命令给到中间者,由中间者去调度命令对应的动作。

类图

角色

Invoker:中间者,执行具体的命令;

ICommand:定义命令的接口,所有命令基于该接口实现;

Receiver:动作的实际拥有者,或者说是定义具体动作的类,相对ICommand来说Receiver是一个广义的动作接收者,他可以是组合多个动作的多个类,也可以封装成单独的一个类,也可以不需要该类,直接在ConcreteCommand中实现具体的动作。

相关推荐
牛奶咖啡136 分钟前
学习设计模式《十二》——命令模式
学习·设计模式·命令模式·队列请求·宏命令·可撤销恢复操作·参数化配置
熙客6 天前
行为型:命令模式
命令模式
季鸢9 天前
Java设计模式之命令模式详解
java·设计模式·命令模式
小小数媒成员9 天前
命令模式,观察者模式,状态模式,享元模式
观察者模式·策略模式·命令模式
Echo``10 天前
8:OpenCV—仿射变换和坐标映射
开发语言·图像处理·人工智能·qt·opencv·计算机视觉·命令模式
暴躁哥11 天前
深入理解设计模式之命令模式
设计模式·命令模式
什么半岛铁盒16 天前
sockaddr结构体详解
编辑器·vim·命令模式
@Turbo@19 天前
【QT】一个界面中嵌入其它界面(三)
开发语言·qt·命令模式
干货日记19 天前
Qt与OpenGL绘制大全(加载obj模型文件、点、线、面、立方体、圆等)
开发语言·qt·命令模式
新手村领路人21 天前
qt5.14.2 opencv调用摄像头显示在label
qt·opencv·命令模式