摘要: 外观模式提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统更容易使用。 简单的说,外观模式就是把复杂的系统的具体操作封装起来,只暴露一个简单的接口,做和众多子系统之间松耦合。 提到一个设计原则:最少知识原则,只和你的密友谈话。(HeadFirst中的描述)具体的说就... 阅读全文
posted @ 2015-05-30 21:42 Pickle 阅读(668) 评论(0) 推荐(0) 编辑
摘要: 迭代器模式提供一种方法顺序访问一个聚合对象中的各个元素,让我们能游走与聚合内的每一个元素,而又不暴露其内部的表示。 把游走的任务放在迭代器上,而不是聚合上这样简化了聚合的接口和实现,也让责任各得其所 提供一种可以遍历聚合对象的方式,又称为:游标cursor模式 聚合对象:存储数据 迭代器:遍历数... 阅读全文
posted @ 2015-05-30 21:13 Pickle 阅读(340) 评论(0) 推荐(0) 编辑
摘要: 备忘录模式又叫做快照模式(Snapshot Pattern)或Token模式,是对象的行为模式。 备忘录对象是一个用来存储另外一个对象内部状态的快照的对象。备忘录模式的用意是在不破坏封装的条件下,将一个对象的状态捕捉(Capture)住,并外部化,存储起来,从而可以在将来合适的时候把这个对象还原... 阅读全文
posted @ 2015-05-30 17:29 Pickle 阅读(1035) 评论(0) 推荐(0) 编辑
摘要: 当创建给定的实例的过程很昂贵或非常复杂的时候,就使用原型模式来拷贝,这种方式在创建对象要耗费很多资源的时候效率提升显著。 实现深度克隆有两种方法,一种是实现Cloneable接口,重写clone()方法。另一种是通过序列化反序列化来获取对象的拷贝。 看一个介绍:http://blog.csdn.n... 阅读全文
posted @ 2015-05-30 17:09 Pickle 阅读(457) 评论(0) 推荐(0) 编辑
摘要: 模板方法模式:模板方法模式是编程中经常用到的模式,它定义了一个操 作中的算法骨架,将某些步骤延迟到子类中实现。这样,新的子类可以在 不改变一个算法结构的前提下重新定义该算法的某些特定的步骤。 核心:处理某个流程的代码已经都具备,但是其中某个节点的代码暂时不 能确定。因此采用工厂方法模式将这个节点... 阅读全文
posted @ 2015-05-30 16:53 Pickle 阅读(583) 评论(0) 推荐(0) 编辑
摘要: 命令模式:将一个请求封装为一个对象,从而使我们可以用不同的请求对客户进行参数化,对请求排队或者记录请求日志,以及支持可撤销的操作。也称之为:动作模式,事务模式。例如数据库的底层架构实现就是一种命令模式。 一个具体的命令来实现命令接口,并且通过Reciever的action()实现execute()方... 阅读全文
posted @ 2015-05-30 16:45 Pickle 阅读(1348) 评论(0) 推荐(0) 编辑