命令模式的优缺点和使用环境:
1.优点:(1)命令模式降低了系统的耦合度,接受者与请求者之间不存在直接引用,两者之间完全解耦
(2)通过使用命令模式,新的命令可以很容易的加入到系统中,符合开闭原则
(3)使用命令模式,可以比较容易的设计一个命令队列(或宏命令)组合命令
(4)命令模式为请求的撤销和恢复操作提供了一种设计和实现方案
2.缺点:(1)可能会导致某些系统有过多的具体命令类,影响使用
3.使用环境:(1)系统需要请求调用者和请求接受者解耦,使得调用者和接收者不直接交互
(2)系统需要在不同的时间指定请求、将请求排队和执行请求,一个命令对象和请求的初始调用者可以有不同的生命周期
(3)系统需要支持命令的撤销和恢复操作
(4)系统需要将一组操作组合在一起形成宏命令