标签:
命令模式
前言:
命令对象封装了如何对目标执行指令的信息,因此客户端或调用者不必了解目标的任何细节,却仍可以对他执行任何已有的操作。通过把请求封装成对象,客户端可以把它参数化并置入队列或日志中,也能够支持可撤销操作。命令对象将一个或多个动作绑定到特定的接收器。命令模式消除了作为对象的动作和执行它的接收器之间的绑定。
正文内容大纲:
1、电视机、遥控器与接收器之间的关系
2、改变一个视图的明暗程度(未使用命令模式)
3、命令模式介绍
4、改变一个视图的明暗程度(使用命令模式)
5、附录
电视机没有遥控器当然也能够换台
如果要用遥控器,电视机上面肯定要有红外线接收器,专门用来接受遥控器的信息。
红外线接收器专门接受遥控器的信息,并转化成电视机里面的信息,让电视机识别。
命令模式的UML图:
概述
在软件系统中,“行为请求者”与“行为实现者”通常呈现一种“紧耦合”。但在某些场合,比如要
对行为进行“记录、撤销/重做、事务”等处理,这种无法抵御变化的紧耦合是不合适的。在这种
情况下,如何将“行为请求者”与“行为实现者”解耦?将一组行为抽象为对象,实现二者之间的
松耦合。这就是命令模式(Command Pattern)。
代码:
命令的发起者和命令的执行者是解耦的。
提供更完整的代码
IOS命令模式的学习网站:http://www.cnblogs.com/YouXianMing/p/4888402.html
标签:
原文地址:http://www.cnblogs.com/goodboy-heyang/p/4993452.html