软设之命令模式

设计模式中的命令模式

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

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

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

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

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

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

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

相关推荐
ASKED_20199 小时前
Langchain学习笔记一 -基础模块以及架构概览
笔记·学习·langchain
Lois_Luo9 小时前
Obsidian + Picgo + Aliyun OSS 实现笔记图片自动上传图床
笔记·oss·图床
(❁´◡`❁)Jimmy(❁´◡`❁)9 小时前
Exgcd 学习笔记
笔记·学习·算法
傻小胖9 小时前
21.ETH-权益证明-北大肖臻老师客堂笔记
笔记·区块链
不绝19112 小时前
UGUI相关——基础篇
命令模式
范纹杉想快点毕业12 小时前
实战级ZYNQ中断状态机FIFO设计
java·开发语言·驱动开发·设计模式·架构·mfc
一只小小的芙厨13 小时前
寒假集训笔记·树上背包
c++·笔记·算法·动态规划
深蓝海拓13 小时前
PySide6从0开始学习的笔记(二十七) 日志管理
笔记·python·学习·pyqt
xqqxqxxq14 小时前
Java Thread 类核心技术笔记
java·笔记
老师用之于民14 小时前
【DAY21】Linux软件编程基础&Shell 命令、脚本及系统管理实操
linux·运维·chrome·经验分享·笔记·ubuntu