命令模式的作用?
(1)命令模式能够较容易地设计一个命令队列。
(2)在需要的情况下,可以较容易地将命令记入日志。
(3)允许接收请求的一方决定是否要否决请求。
(4)可以容易地实现对请求的撤销和重做。
(5)由于加进新的具体命令类不影响其他的类,因此增加新的具体命令类很容易。
(6)命令模式把请求一个操作的对象与知道怎么执行一个操作的对象分隔开。
什么是命令模式?
在GOF的《设计模式:可复用面向对象软件的基础》一书中对命令模式是这样说的:将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。在OOP中,一切都是对象,将请求封装成对象,符合OOP的设计思想,当将客户的单个请求封装成对象以后,我们就可以对这个请求存储更多的信息,使请求拥有更多的能力;命令模式同样能够把请求发送者和接收者解耦,使得命令发送者不用去关心请求将以何种方式被处理。