文章目录
-
- 意图
- 什么时候使用命令
-
-
- 真实世界类比
-
- 命令模式的实现
- 命令模式的优缺点
亦称:动作、事务、Action、Transaction、Command
意图
将一个请求封装为一个对象,使发出请求的责任和执行请求的责任分割开。这样两者之间通过命令对象进行沟通,这样方便将命令对象进行储存、传递、调用、增加与管理。
什么时候使用命令
1、如果你需要通过操作来参数化对象, 可使用命令模式。
命令模式可将特定的方法调用转化为独立对象。 这一改变也带来了许多有趣的应用: 你可以将命令作为方法的参数进行传递、 将命令保存在其他对象中, 或者在运行时切换已连接的命令等。
举个例子: 你正在开发一个 GUI 组件 (例如上下文菜单), 你希望用户能够配置菜单项, 并在点击菜单项时触发操作。
2、如果你想要将操作放入队列中、 操作的执行或者远程执行操作, 可使用命令模式。