【简易设计模式17】命令模式

it2024-04-18  43

总第69篇

我们在饭店点餐时,只要想好自己要吃什么,直接告诉服务员,过一会儿就可以吃饭了,不用管厨师是如何做的,这种我们只要发送指令就能完成想要的任务的模式,在程序中称为命令模式。本篇将详细梳理设计模式中的命令模式。

1.命令模式的概念

命令模式是一个高内聚的模式,它是将一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对请求排队或记录请求日志,可以提供命令的撤销和恢复功能。

命令模式最大的特点是将具体的命令与对应的接收者相关联,使得调用方不用关心具体的行动执行者及如何执行,只要发送正确的命令,就能准确无误地完成任务。其通用的类图关系如下:

 

从上面的类图关系可以看出,命令模式中主要包含三个角色:

Receiver接收者:任务的具体实施方,或行动的真实执行者; Invoker调度者: 接收任务并发送命令,对接用户的需求并执行内部的命令,负责外部用户与内部命令的交互; Command命令:要完成的任务或要执行的动作,这是命令模式的核心;

命令模式在项目中应用非常多,它的优

最新回复(0)