软设之命令模式

设计模式中的命令模式

它的意图是:将一个请求封装为一个对象,从而可用不同的请求对客户进行参数化,将请求排队或记录请求日志,支持可撤销操作

比方说,你向服务员点菜,服务员把你点的菜写到订餐单里,你点的菜就是命令,这个订餐单就是对命令的封装,封装为一个对象。服务员把点餐单传递给厨师,厨师是负责执行命令的人。

Command:抽象命令类,声明执行操作的一个接口

ConcrteCommand:具体命令类,将一个接受者对象绑定于一个动作。实现EXEUTE方法,以调用接收者的具体操作

Invoker:调用者,要求一个命令对象执行一个请求

Receiver:接收者,知道如何执行关联请求的相关操作

Client:客户应用程序,创建一个具体命令类对象,并且设定它的接收者

相关推荐
程序猿炎义9 分钟前
【llm-algo-leetcode学习笔记】显存与性能认知底座
笔记·学习·leetcode
摇滚侠38 分钟前
《Docker技术入门与实战 第4版》阅读笔记 6 使用 Dockerfile 创建镜像 2
java·笔记·docker
树的枝1 小时前
【STM32】05.TIM定时器
笔记·stm32·单片机·嵌入式硬件
不会代码的小猴1 小时前
6. Qt网络编程
开发语言·c++·笔记·qt·算法
tq10862 小时前
从阿罗不可能定理到所有制:动态协调与资源再配置的理论逻辑
笔记
峥无12 小时前
从0到1手撕红黑树:封装实现 my_map 与 my_set(SGI-STL 源码级深度解析)
开发语言·c++·笔记·算法·stl
不会代码的小猴13 小时前
3. 控件学习1
开发语言·c++·笔记·qt·算法
疯狂打码的少年14 小时前
【数据结构】图的存储结构:邻接矩阵与邻接表
数据结构·笔记
蒸蒸yyyyzwd15 小时前
cpp 选手准备秋招学习笔记 day10
笔记·面试·求职招聘
haerapicom16 小时前
欠定方程里藏着哪几个非零项:OMP 稀疏恢复侦探笔记
笔记