1.意图提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露该对象的内部表示。2.别名Cursor-游标。3.动机一个聚合对象,应该提供一种方法来让别人可以访问它的元素,而又不需暴露它的内部结构。4.适用性访问一个聚合对象的内容而无需暴露它的内部表示。支持聚合对象的多..
分类:
其他好文 时间:
2017-04-27 19:31:57
阅读次数:
141
模式定义:命令模式(Command Pattern):将一个请求封装为一个对象,从而使我们可用不同的请求对客户进行参数化;对请求排队或者记录请求日志,以及支持可撤销的操作。命令模式是一种对象行为型模式,其别名为动作(Action)模式或事务(Transaction)模式。模式结构如下图:
Command:定义命令的接口,声明执行的方法。ConcreteCommand:命令接口实现对象,是“虚”的实...
分类:
其他好文 时间:
2016-08-15 20:53:47
阅读次数:
165
1.意图 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 2.别名 依赖(Depenents),发布-订阅(Publish-subscribe) 3.动机 一个目标可以有任意数目的依赖它的观察者。一旦目标的状态发生改变,所有的观察者都得到通知 ...
分类:
其他好文 时间:
2016-07-31 19:19:20
阅读次数:
243
1.意图 在布破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可以将对象恢复到原先保存的状态。 2.别名 Token 3.动机 为了允许用户取消不确定的操作或从错误中恢复过来,需要实现检查点和取消机制,而要实现这些机制,必须将状态信息保存在某处,这样才能将对象恢复到 ...
分类:
其他好文 时间:
2016-07-24 19:19:09
阅读次数:
139
1.意图 用一个中介对象来封装一系列的对象交互。中介者使各个对象不需要显示地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 2.动机 通过将集体行为封装在一个单独的中介者对象中,中介者负责控制和协调一组对象间的交互。中介者充当一个中介以使组中的对象不再相互显示引用。这些对象只知道中介 ...
分类:
其他好文 时间:
2016-07-24 16:13:28
阅读次数:
154
1.意图 提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露该对象的内部表示。 2.别名 Cursor-游标。 3.动机 一个聚合对象,应该提供一种方法来让别人可以访问它的元素,而又不需暴露它的内部结构。 4.适用性 访问一个聚合对象的内容而无需暴露它的内部表示。 支持聚合对象的多种遍历。 为 ...
分类:
其他好文 时间:
2016-07-24 12:06:32
阅读次数:
149
1.意图 将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。 2.别名 动作(Action),事务(Transaction) 3.动机 命令模式通过将请求本身变成一个对象来使请求可向未指定的应用对象提出请求。这个对象可被存储并像其他的对 ...
分类:
其他好文 时间:
2016-07-03 13:05:08
阅读次数:
147
1.意图 使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。 2.动机 给多个对象处理一个请求的机会,从而解耦发送者和接收者。 3.适用性 有多个的对象可以处理一个请求,哪个对象处理该请求运行时刻自动确定。 ...
分类:
其他好文 时间:
2016-06-26 13:57:37
阅读次数:
142
策略模式: 策略模式(Strategy Pattern):定义一系列算法,将每一个算法封装起来,并让它们可以相互替换。策略模式让算法独立于使用它的客户而变化,也称为政策模式(Policy)。 策略模式是一种对象行为型模式。 模式动机: 完成一项任务,往往可以有多种不同的方式,每一种方式称为一个策略, ...
分类:
Web程序 时间:
2016-05-28 23:21:44
阅读次数:
218
中介者模式: 中介者模式(Mediator Pattern)定义:用一个中介对象来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。中介者模式又称为调停者模式,它是一种对象行为型模式。 模式动机: 1.在用户与用户直接聊天的设计方案中,用户 ...
分类:
Web程序 时间:
2016-05-28 17:20:40
阅读次数:
209