18、设计模式深度解析:命令、策略与中介者模式

命令、策略与中介者模式解析

设计模式深度解析:命令、策略与中介者模式

1. 命令模式概述

命令模式是一种将操作封装成对象的设计模式,这些对象可以在对象之间传递、管理、排序、调度和按需执行。它将操作的调用者与执行者分离,使得操作可以被持久化、恢复,还能实现远程执行。

在命令模式中,一个对象创建一个命令实例,并将其传递给命令执行器,由执行器负责执行该命令。

2. 命令模式的应用场景

命令模式适用于以下场景:
- 为客户端对象指定要执行的操作。
- 在不同时间指定、排队和执行请求,或根据某些标准选择请求。
- 支持操作的撤销和重做。
- 记录操作日志,以便在系统崩溃或损坏时重新应用操作。
- 提供一组高级操作的语义,这些操作可以以适当的方式组合,并基于低级原语操作构建。

3. 命令模式的组成部分

命令模式主要包含以下四个角色:
| 角色 | 描述 |
| ---- | ---- |
| 命令(Command) | 代表命令的抽象概念。 |
| 具体命令(Concrete Command) | 实现特定的命令,由客户端(调用者)提交给命令执行器。 |
| 命令执行器(Command Executor) | 负责管理和执行命令,知道如何执行命令。 |
| 调用者(Invoker) | 负责创建命令并将其提交给命令执行器,可能有多个调用者。 |

以下是命令模式的工作流程 mermaid 流程图:

graph LR
    classDef p
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值