设计模式之命令模式(Command Pattern)

概述

In the command pattern an object is used to encapsulate all information needed to perform an action or trigger an event at a later time. 

命令模式是把请求方和接受处理方分离(解耦),通过一个对象来封装处理方的调用。

命令(Command)模式的定义如下:将一个请求封装为一个对象,使发出请求的责任和执行请求的责任分割开。这样两者之间通过命令对象进行沟通,这样方便将命令对象进行储存、传递、调用、增加与管理。

实际上就是用对象来表示命令,命令可以触发处理接口。下面的案例就是 把Invoker直接调用Receiver改成了:通过Command进行调用Receiver,这样解构了Invoker和Receiver,还方便对请求进行日志记录。

本文类图

本文类图

代码示例

命令代码
请求者和接受者

测试结果

测试结果

参考资料

参考命令模式代码

命令模式文档

本地GitHub代码

你可能感兴趣的:(设计模式之命令模式(Command Pattern))