命令模式
定义
命令模式将"请求"封装成对象,以便使用不同的请求,队列或日志来参数化其他对象、命令模式也支持可撤销的操作。
需求
一个遥控器控制不同的多个设备开关,遥控器上有6个设备的所有开关(12个)加上一个撤销上一个操作的按钮,每个设备的开关等是不同的类的不同方法,方法名也不一样,如何实现这个类。
传统设计
12个开关分别绑定不同的设备的开关方法,比如空调开绑定on(),热水器开绑定热水器的start()。
Decorator模式
试用范围
请求较多,但是归类一样时,并且请求变换会比较大,所以封装变化的地方,封装一层接口,解耦。