05-命令模式

意图(GOF定义)

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

理解

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

类图

角色

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

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

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

相关推荐
三玖诶2 天前
在 Qt 中使用 QLabel 设置 GIF 动态背景
开发语言·qt·命令模式
我码玄黄3 天前
JS 的行为设计模式:策略、观察者与命令模式
javascript·设计模式·命令模式
jzpfbpx3 天前
[go] 命令模式
开发语言·golang·命令模式
图像处理大大大大大牛啊6 天前
使用mingw64 编译 QT开发流程
开发语言·c++·qt·命令模式
写bug如流水6 天前
【FastAPI】离线使用Swagger UI 或 国内网络如何快速加载Swagger UI
ui·fastapi·命令模式
AI让世界更懂你8 天前
漫谈设计模式 [13]:命令模式
python·设计模式·命令模式
2401_839115738 天前
9.11.
命令模式
纵码驰骋9 天前
探索最佳 Shell 工具:全面测评 Bash、Zsh、Fish、Tcsh 和 Ksh
linux·服务器·ide·ssh·bash·策略模式·命令模式
榴月子10 天前
命令模式(Command Pattern)
java·命令模式
胖虎江11 天前
9.9(QT Day 2)
开发语言·qt·命令模式