惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

L
LangChain Blog
博客园_首页
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
月光博客
月光博客
S
SegmentFault 最新的问题
量子位
Apple Machine Learning Research
Apple Machine Learning Research
博客园 - 司徒正美
博客园 - Franky
Google DeepMind News
Google DeepMind News
Recent Announcements
Recent Announcements
B
Blog RSS Feed
C
Check Point Blog
The Cloudflare Blog
M
MIT News - Artificial intelligence
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
F
Fortinet All Blogs
Hugging Face - Blog
Hugging Face - Blog
博客园 - 叶小钗
V
Visual Studio Blog
V
V2EX
Microsoft Azure Blog
Microsoft Azure Blog
博客园 - 聂微东
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

博客园 - JackMa

设计模式 外观 Facade 设计模式 适配器-Adapter 设计模式 单件-Singleton 积累PDU 设计模式 工厂-Factory 设计模式 策略-Strategy,装饰-Decorator,观察者-Observer Java多线程编程 Red Hat Linux认证 认识Agile,Scrum和DevOps 博客目标 iOS Development Learning 13Nov 重新起步 iOS 开发 XML学习笔记(七)Schema语法杂项 XML学习笔记(六)Schema语法之复杂类型 UML和模式应用-第一部分:绪论 XML学习笔记(五)Schema语法之简单类型 XML学习笔记(四)Schema介绍篇 XML学习笔记(三)进阶篇 Xml学习笔记(二)Javascript篇
设计模式 命令-Command
JackMa · 2016-04-02 · via 博客园 - JackMa

命令-Command

当要向不同类的对象发出相同的请求时,可以将接收者和他的动作封装进一个命令对象。这样调用者只和命令产生依赖。而不会和众多的接收者发生依赖。

Head First例子

要设计一款遥控器,控制家里不同的灯或电器。有7个控制栏,上面有开和关按钮。这里遥控器不直接调用灯或电器。因为那是具体的实现,不稳定。引入Command对象。每个按钮按下,就执行相关命令的execute方法。针对不同的电器实现一些列的OnCommand和OffCommand类。里面封装了具体的灯或电器。在构造时传入。在execute方法中执行具体的action方法。

更进一步的应用,可以支持undo操作和宏命令。