设计模式之六:命令模式(封装调用)

命令模式可以将请求的对象和执行请求的对象解耦(实际上是通过命令对象进行沟通,即解耦)。(个人感觉,这章讲的很一般)

按个人理解来讲:

假如需要一个遥控器,遥控器有一个插口可以插上任意的命令接口(比如控制空调开关,洗衣机开关,客厅灯开关)。Receiver就是灯这个对象,把灯这个对象封装到command对象中,再使用组合,把command放在invoker(遥控器)里面。这样子invoker就不知道具体的操作细节,并可以与具体操作解耦。

命令模式:将请求封装成对象,这可以让你使用不同的请求、队列或者日志请求来参数化其它对象。命令模式也可也支持撤销操作。

相关推荐
小王师傅6642 分钟前
【设计模式】装饰模式(三):从装饰模式看 Java 与面向对象设计(原理篇)
设计模式
Zane19944 小时前
从一次支付渠道扩展需求,看懂"多用组合少用继承"到底在说什么
设计模式
geovindu5 小时前
CSharp:Condition Variable Pattern
后端·设计模式·c#·.net·.netcore·条件变量模式·同步型模式
geovindu5 小时前
sql: Data Modeling Patterns using mysql
sql·mysql·设计模式·数据库开发
sarasuki1 天前
失败重试:Agent 中指数退避的正确姿势
人工智能·设计模式·agent
Zane19941 天前
为什么你写的 Java 代码"看着面向对象、实际是面向过程"?
设计模式
geovindu1 天前
sql: Data Modeling Patterns
数据库·sql·设计模式·sqlserver
YHL3 天前
🎯 JavaScript 单例模式(Singleton Pattern)—— 从理论到实战
javascript·设计模式
2401_868534783 天前
网络环境规划核心考点全梳理
网络·设计模式
feiyu_gao3 天前
Cocreation Framework:一套给所有人的 AI 协作思考系统
设计模式·aigc·ai编程