摘要: 在GOF的《设计模式:可复用面向对象软件的基础》一书中对访问者模式是这样说的:表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。访问者模式把数据结构和作用于结构上的操作之间的耦合解脱开,使得操作集合可以相对自由地演化。该模式的目的是要把处理从数... 阅读全文
posted @ 2015-04-24 16:20 穆穆兔兔 阅读(440) 评论(0) 推荐(0) 编辑
摘要: 在GOF的《设计模式:可复用面向对象软件的基础》一书中对状态模式是这样说的:允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类。状态模式的重点在于状态转换,很多时候,对于一个对象的状态,我们都是让这个对象包含一个状态的属性,这个状态属性记录着对象的具体状态,根据状态的不同使用分支... 阅读全文
posted @ 2015-04-24 15:30 穆穆兔兔 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 在GOF的《设计模式:可复用面向对象软件的基础》一书中对观察者模式是这样说的:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。当一个对象发生了变化,关注它的对象就会得到通知;这种交互也称为发布-订阅(publish-subscribe)。目标是... 阅读全文
posted @ 2015-04-24 15:07 穆穆兔兔 阅读(416) 评论(0) 推荐(0) 编辑
摘要: 在GOF的《设计模式:可复用面向对象软件的基础》一书中对备忘录模式是这样说的:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。类图和实例:简单的模式实例:#include #include using namespace std;... 阅读全文
posted @ 2015-04-24 11:37 穆穆兔兔 阅读(311) 评论(0) 推荐(0) 编辑
摘要: 在GOF的《设计模式:可复用面向对象软件的基础》一书中对中介者模式是这样说的:用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。我们都知道,面向对象设计鼓励将行为分布到各个对象中。但是,这种分布可能会导致对象间有许多连接。在... 阅读全文
posted @ 2015-04-24 11:28 穆穆兔兔 阅读(263) 评论(0) 推荐(0) 编辑
摘要: 在GOF的《设计模式:可复用面向对象软件的基础》一书中对迭代器模式是这样说的:提供一种方法顺序访问一个聚合对象中各个元素,而又不需要暴露该对象的内部表示。类图和实例:迭代器模式由以下角色组成:1.迭代器角色(Iterator):迭代器角色负责定义访问和遍历元素的接口。2.具体迭代器角色(Concre... 阅读全文
posted @ 2015-04-24 11:14 穆穆兔兔 阅读(282) 评论(0) 推荐(0) 编辑
摘要: 在GOF的《设计模式:可复用面向对象软件的基础》一书中对解释器模式是这样说的:给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。如果一种特定类型的问题发生的频率足够高,那么可能就值得将该问题的各个实例表述为一个简单语言中的句子。这样就可以构建一个解释器,... 阅读全文
posted @ 2015-04-24 10:55 穆穆兔兔 阅读(248) 评论(0) 推荐(0) 编辑