5.22
命令模式和状态模式的学习内容
命令模式是一种将请求封装为对象的行为型设计模式,它允许使用不同的请求来参数化客户端,并且支持请求的排队、记录日志以及撤销重做操作。命令模式将请求的发起者和执行者完全解耦,发送者不需要知道请求是如何被执行的,只需要发送命令对象即可。课堂中老师用智能家居控制系统的例子来说明命令模式,遥控器是请求的发送者,灯、空调、电视是请求的执行者,按下遥控器按钮的动作被封装为具体的命令对象,这样遥控器不需要知道每个设备的具体操作方法,只需要调用命令对象的执行方法即可。命令模式非常适合实现撤销和重做功能,因为每个命令对象都可以存储执行前的状态并在撤销时恢复。状态模式则是一种允许对象在内部状态发生改变时改变其行为的行为型设计模式,它使得对象看起来像是修改了自己的类。状态模式将每个状态的行为封装在一个独立的类中,上下文对象通过委托给当前状态对象来执行行为。这两种模式都通过将行为与对象分离来增加系统的灵活性和可维护性。
浙公网安备 33010602011771号