命令模式(别名:动作,事物)
为系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。
Command Pattern(Another name:Action,Transaction)
Encapsulate a request as an object, thereby letting you parameterize clients with different requests, queue or log requests, and support undoable operations.
类图
模式的结构与使用
命令模式的结构中包四种角色。
+ 接受者(Receiver):接受者是一个类的实例,该实例负责执行与请求相关的操作。
+ 命令(Command):命令是一个接口,规定了用来封装“请求”的若干个方法,比如:execute()、undo()等方法。
+ 具体命令(Concrete command):具体命令是实现命令接口的类的实例。具体命令必须实现接口中的方法,比如execute(),使该方法封装一个“请求”。
+ 请求者(Invoker):请求者是一个包含Command接口变量的类的实例。请求者中的Co