Advertisement

Qt命令模式

阅读量:

命令模式

定义:通过将“请求”转化为对象的形式,实现对各类请求、队列或日志的参数化处理,从而赋予其他对象更为灵活的使用方式。该模式不仅支持对操作进行参数化,还能够实现操作的撤销功能。

类图

客户角色(Client): 负责生成具体的命令实例,并为该命令对象指定相应的接收者。

命令角色(Command): 用于定义命令的通用接口,明确执行操作的方法。该角色通常以抽象类的形式存在。

具体命令角色(ConcreteCommand): 实现命令接口的具体类,属于抽象的实现方式;此类通常包含接收者对象,并通过调用接收者的相关方法来完成具体的操作。

请求者角色(Invoker): 负责向命令对象发出执行请求,一般会持有多个命令对象。作为客户端触发命令执行的关键点,它相当于调用命令对象的入口。

接收者角色(Receiver): 执行实际操作的对象。任何具备实现所需功能能力的类都可以作为接收者。

示例:

在多数情况下,常见的例子包括遥控器和餐厅点餐系统,此处以遥控器为例进行说明。

首先展示一个较为简陋的遥控器示意图

全部评论 (0)

还没有任何评论哟~