命令模式 (Command Pattern)
将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化
一、模式概述
1.1 定义
命令模式(Command Pattern)是一种行为型设计模式,它将请求封装成对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。
1.2 适用场景
- 抽象出待执行的动作以参数化某对象
- 在不同的时刻指定、排列和执行请求
- 支持取消操作
- 支持修改日志
- 用构建在原语操作上的高层操作构造一个系统
1.3 优缺点
| 优点 | 缺点 |
|---|---|
| 降低耦合度 | 可能导致某些系统有过多的具体命令类 |
| 新的命令可以很容易添加到系统中去 | 增加了系统的复杂度 |
| 可以比较容易地设计一个组合命令 | 可能增加代码量 |