软设之命令模式

设计模式中的命令模式

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

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

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

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

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

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

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

相关推荐
疯狂打码的少年4 小时前
【面向对象】面向对象概述:从“按步骤做”到“找谁来做”
笔记
今夜有雨.5 小时前
C++JSON 解析器
c++·笔记·后端·学习·json
xian_wwq5 小时前
【学习笔记】框架层坍缩——LangChain 们正在被重新定义-14/15
笔记·学习·langchain
大白菜和MySQL5 小时前
elk部署和kibana图形化展示
java·笔记·elasticsearch
workflower6 小时前
从幻觉,到现实
人工智能·深度学习·机器学习·设计模式·机器人
pluviophile_s6 小时前
数据结构:第6讲:树与二叉树
数据结构·笔记
爱莉希雅&&&6 小时前
Rocky Linux 10.1 + K8s 1.36.3 离线集群部署笔记(Kubernetes)
linux·笔记·docker·kubernetes·calico
星恒随风6 小时前
C++ 多态底层原理:静态绑定、动态绑定、虚函数表与工程实践
开发语言·c++·笔记·学习
go不是csgo7 小时前
从模板到五道 LeetCode:完全背包的 Golang 教学笔记
笔记·leetcode·golang
电子科技圈7 小时前
第二代无线平台历久弥新,赋能物联网创新迭代
人工智能·嵌入式硬件·mcu·物联网·设计模式·硬件架构·iot