摘要: 代理模式为另一个对象提供了一个替身或占位符以控制对这个对象的访问。 代理模式的应用: 远程代理,也就是为一个对象在不同的地址空间提供局部代理。这样可以隐藏一个对象存在于不同地址空间的事实 WebServer在.net中的应用就是这样的一个例子 虚拟代理,是根据需要创建开销很大的对象。通过它来存放实例化需要很长时间的真对象。 这样可以达到性能的最优化,比如说你打开一个很大的HTML网页时,里面... 阅读全文
posted @ 2012-01-16 21:23 zhxiang 阅读(203) 评论(0) 推荐(0)
摘要: 状态模式允许对象在内部状态改变时改变他的行为,对象看起来好像修改了他的类。 要点: 1. 策略模式和状态模式是双胞胎,它们有相同的类图,但是它们的意图不同。策略模式是围绕可以互换的算法来成功创建业务的,然而状态模式是通过改变对象内部的状态来帮助对象控制自己的行为. 2. Context将与状态相关的操作委托给当前的Concrete State对象处理。 3. Context可将自身作为一个参数传递... 阅读全文
posted @ 2012-01-16 21:05 zhxiang 阅读(209) 评论(0) 推荐(0)
摘要: 迭代器模式提供了一种方法顺序访问一个聚合对象中的各个元素,而不暴露其内部的表示。 迭代模式与组合模式要点: 1.迭代器允许访问聚合的元素,而不需要暴露它的内部结构 2.迭代器将遍历聚合的工作封装进一个对象中 3.当使用迭代器的时候,我们一来聚合提供遍历 4.迭代器提供了一个通用的接口,让我们遍历聚合的项时,就可以使用多态机制 5.我们应该努力让一个类只分配一个责任 6.组合模式提... 阅读全文
posted @ 2012-01-16 20:38 zhxiang 阅读(791) 评论(0) 推荐(0)