当前位置: 首页 > news >正文

05-命令模式

意图(GOF定义)

将一个请求封装为一个对象,从而使你可用不同的请求对客户端进行参数化,对请求排队或者记录日志,以及可支持撤销的操作。

理解

命令模式就是把一些常用的但比较繁杂的工作归类为成一组一组的动作,每组动作对应着一个命令,用户不再去对每个动作进行调用,而是将命令给到中间者,由中间者去调度命令对应的动作。

类图

在这里插入图片描述

角色

Invoker:中间者,执行具体的命令;
ICommand:定义命令的接口,所有命令基于该接口实现;
Receiver:动作的实际拥有者,或者说是定义具体动作的类,相对ICommand来说Receiver是一个广义的动作接收者,他可以是组合多个动作的多个类,也可以封装成单独的一个类,也可以不需要该类,直接在ConcreteCommand中实现具体的动作。

http://www.lryc.cn/news/259314.html

相关文章:

  • Docker安全及日志管理
  • 【LeetCode每日一题】152. 乘积最大子数组
  • Python 反射
  • HTML基本网页制作
  • Tcl语言语法精炼总结
  • [GPT]Andrej Karpathy微软Build大会GPT演讲(下)--该如何使用GPT助手
  • 路由器静态路由的配置
  • [Firefly-Linux] RK3568在Ubuntu上安装内核头文件实现本地编译驱动程序
  • RabbitMQ Streams 详解
  • 跨境电商如何利用跨境客服软件提升销售额
  • css/less/scss代码注意事项
  • Git应用——代码提交规范 feat ,fix ,style
  • TDengine Kafka Connector将 Kafka 中指定 topic 的数据(批量或实时)同步到 TDengine
  • 单片机的低功耗模式介绍
  • 基于SSM实现的精品课程网站
  • 广州旅游攻略(略说一二)
  • C++STL的list模拟实现
  • django--分页功能
  • centOS安装bochsXshell连接centos启动可视化界面
  • mac m2芯片 安装nginx + php + mysql
  • vue axios 使用
  • 使用docker实现logstash同步mysql到es
  • hive数据仓库工具
  • C语言 联合体验证 主机字节序 +枚举
  • python和pygame实现烟花特效
  • gRPC-Gateway:高效转换 RESTful 接口 | 开源日报 No.105
  • 非专业的建模人员如何给模型设置材质纹理贴图?
  • 自动化测试、压力测试、持续集成
  • FFmpeg之HWContextType
  • Python面向对象之类和对象(Python系列16)