命令(Command)模式的定义如下:将一个请求封装为一个对象,使发出请求的责任和执行请求的责任分割开。这样两者之间通过命令对象进行沟通,这样方便将命令对象进行储存、传递、调用、增加与管理。
命令模式的主要优点如下。
智能家居日益完善,通过同一遥控器操控不同家居是智能家具中可以明显提升使用幸福感一种功能。这就需要遥控器与家居进行解耦,所以使用命令模式进行设计。
现有RemoteControl为调用者,Command充当抽象命令角色,AirCondition、Curtain、Light充当接受者角色,AirConditionOnCommand、AirConditionOffCommand、CurtainOnCommand、CurtainOffCommand、LightOnCommand、LightOffCommand,NoCommand充当具体命令角色。
在上述基础上,添加宏命令
以下为宏命令执行结果