软设之命令模式

设计模式中的命令模式

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

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

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

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

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

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

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

相关推荐
sarasuki3 小时前
为什么 Agent 工具需要一个「协议」而不是「框架」:MCP 成为标准的底层逻辑
设计模式·agent·mcp
vivo互联网技术3 小时前
知识不是文件,也不是向量 | KDC 系列 02
人工智能·设计模式·架构
一隅论数智6 天前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
深圳老胡6 天前
STM32F407 控制 L6470 步进电机驱动 —— 控制过程简介
笔记·stm32·单片机·嵌入式硬件·代码规范
Because_of_Her16 天前
并查集-听课笔记
笔记·算法·并查集
彧azz6 天前
Linux 环境下 Redis 学习总结:数据类型、持久化、锁、事务、主从与缓存问题
linux·redis·笔记·学习·面试
陈卫军老师6 天前
陈卫军:把口味写在一张纸上,店才稳得住
经验分享·笔记·流量运营
`流年づ6 天前
人工智能学习笔记 - 补充
人工智能·笔记·深度学习·学习
qeen876 天前
【Linux】操作系统之进程介绍(二)
linux·笔记·学习·进程
从零开始的嵌入式之旅6 天前
day47
arm开发·经验分享·笔记·嵌入式硬件