patten
iteye_14504
这个作者很懒,什么都没留下…
展开
-
组合模式 读书笔记
允许你将对象组合成树形结构来表现“整体/部分”层次结构。组合能让客户以一致的方式处理个别对象以及对象组合。 创建一个树形结构,在同一个结构中处理嵌套菜单和菜单项组。通过将菜单和项放在相同的结构中,我们创建了一个“整体/部分”层次结构,即使由 菜单 和 菜单 项 组成 的 对象 树 。但是 可以 将 他视为 一个 整体,像是 一个 丰富的大菜单 。 1.我们应该努力让一个类只分配一个责任。 2....2008-03-24 15:12:25 · 85 阅读 · 0 评论 -
模版模式 读书笔记
在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模版方法使子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。模板就是一个方法。更具体的说,这个方法将算法定义成一组步骤,其中的任何步骤都可以是抽象的,由子类负责实现。这可以确保算法的结构保持不变,同时由子类提供部分实现。1 。模版方法定义了算法的步骤,把这些步骤地实现延迟到子类。2。模版方法模式为我们提供了一种代码复用的重...2008-04-10 18:04:12 · 79 阅读 · 0 评论 -
Facade patten 读书笔记
提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统更容易使用。 1。当需要使用一个现有的类而其接口并不符合你的需求时,就使用适配器。2。当需要简化并统一一个个很大的接口或者一群复杂的接口时,就使用外观。3。适配器改变接口以符合客户的期望。4。外观将客户从一个复杂的子系统中解耦。5。实现一个适配器可能需要一番功夫,也可能不费功夫,视目标接口的大...2008-04-10 18:03:11 · 80 阅读 · 0 评论 -
Adapter patten 读书笔记
将一个类的接口,转换成客户期待的另一个接口。适配器让原本接口不兼容的类可以合作无间。[img]http://blufiles.storage.live.com/y1pZ1u4rC44uChXwIBFqK5mLwHk6r-HEfZ67jPky-gBcOUn31HWvxQplIuoXiZpseq19BNc5lqxwP0[/img][code="java"]package pattern; ...2008-04-10 18:01:02 · 79 阅读 · 0 评论 -
command patten 读书笔记
[img]http://blufiles.storage.live.com/y1pZ1u4rC44uChn_NJcl-uonGNoE99EajJ0tmjJFMjbGqvM1avfL8b2B_rB1XeTq7unlfAHtQQrQ9o[/img]1。命令模式将发出请求的对象和执行请求的对象解耦。2。在被解耦的两者之间是通过命令对象进行沟通的。命令对象封装了接受者和一个或者一组动作。3。调...2008-04-10 17:56:01 · 92 阅读 · 0 评论 -
单例模式 读书笔记
确保一个类只有一个实例,并且只有一个全局访问点。如果使用多个类加载器,可能导致单例模式失效而产生多个实例。单例不允许继承,全局变量也会产生多个实例. 单例模式和工厂模式,抽象工程模式 其实都是为了创建对象,但是单例模式只能产生一个对象实例,而工厂模式可以产生不同类型的对象,抽象工厂模式却能批量产生不同类型的对象。单例模式产生的对象有些孤独,是寡者,没有兄弟,一般对特别重要的资源才可能用到单例模式,...2008-04-07 18:44:32 · 73 阅读 · 0 评论 -
抽象工厂模式读书笔记
提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类。抽象工厂允许客户使用抽象的接口来创建一组相关产品,而不需要关心具体实际产出的产品是什么。总结 :[list=1][*]所有工厂都是用来封装对象的创建。[*] 简单工厂,虽然不是真正的设计模式,但是仍然不失为一个简单的方法,可以把客户程序从具体类解耦。[*]工厂方法使用继承:把对象的创建委托给子类,子类实现工厂方法来...2008-04-07 18:39:08 · 84 阅读 · 0 评论 -
工厂方法 读书笔记
工厂发法定义了一个创建对象的接口或者抽象类,但是有子类来决定要实例化的类是哪一个,工厂方法让类把实例化 推迟到子类。[img]http://blufiles.storage.live.com/y1pZ1u4rC44uCjZnwn46CaeGatIYIVB2-kneM5uFiuWN2LPHcCNKKad7yDx_tV-pBhfOV1ouAqWI0c[/img][code="java"]pac...2008-04-03 14:27:40 · 77 阅读 · 0 评论 -
装饰者模式 读书笔记
package pattern; public class StarbuzzCoffee { public static void main(String args[]) { Beverage beverage = new Espresso(); System.out.println(beverage.getDescription() + "$" + beverage.cost(0.5...2008-04-03 14:25:50 · 108 阅读 · 0 评论 -
观察者模式(读书笔记)
观察者模式定义了对象之间的一对多依赖,这样一来当一个对象改变状态时,他的所有依赖着都会收到通知改变状态。 观察者模式 有点类似 打草惊蛇,一石双鸟。对主题进行扩展,不会影响观察者,添加观察者也业不会影响主题。 1.观察者模式定义了对象之间一对多的关系。 2。主题(也就是可观察者)用一个共同的接口来更新观察者 3。观察者和可观察者之间用松耦合方式结合,可观察者不知道观察者的细节,只知道观察者实现了观...2008-04-01 18:33:24 · 89 阅读 · 0 评论 -
Head First Design Patterns 读后感3-策略模式
策略模式-定义了算法族,分别封装起来,让他们之间可以相互替换,此模式让算法的变化独立于使用算法的客户。策略模式有点像调包计和偷梁换柱。设计模式就是为了适应变化那些大师而想起来的,能适应变化的软件才能长命,人也一样,只有适应外界变化,方可生存。 package pattern;public abstract class Duck { FlyBehavior flyBehav...2008-04-01 18:32:11 · 117 阅读 · 0 评论 -
Head First Design Patterns 读后感2 设计原则
1。软件开发中唯一一个不变的是 变化。大千世界,千奇百怪,行行色色,光影陆离,瞬息万变,然而这些在这些变化中我们总是能找到不变的东西,只有找到不变的东西,我们才可以以不变应万变,才能不被万物所累,超脱万物,以不变应万变才处理万物的不二法门。2。分离开不变的和变化的,把不变的封装在一起,把变化的封装在一起。好比这个社会,把坏人犯了法的人都封闭在监狱里,这样才容易管理,而把变化的封装在一起也容易处...2008-03-31 13:47:37 · 77 阅读 · 0 评论 -
Head First Design Patterns 读后感1
如何让大脑把记得更深刻1。慢点,你理解的越多,记得月少2。勤做练习 ,自己记笔记3。阅读“there are no dumb questions” part4。上床睡觉前不要看其他书,最少不要看比较难的书籍5。要多喝水6。把你学到的讲给别人,这样记忆更深刻7。听听大脑怎么说,如果大脑把刚刚看的东西就忘记了,就该休息了8。要有感觉9 。设计也写东西...2008-03-31 13:46:25 · 111 阅读 · 0 评论 -
proxy state 读书笔记
定义:为另一个对象提供一个替身或者战位符以范围这个对象。要点:1。代理模式为另外一个对象提供代表,以便控制客户对对象的访问,管理访问的方式有许多种。2。远程带来管理客户和远程对象之间的交会。3。虚拟代理控制访问实例化开销大的对象。4。保护代理基于调用者控制对对象方法的访问。5。代理模式有许多变体,例如:缓存代理,同步代理,防火墙代理和写入时复制代理。6。代理在结构上类似装饰者,但是目...2008-03-28 18:35:12 · 126 阅读 · 0 评论 -
阅读不懂,图书之过——《大话设计模式》创作历程 (转载)
写这本书的确是个意外,因为在之前,我和所有的做技术的朋友一样,也是喜欢通过看书学习技术的读者。一直保持着读到好书好句时拍案叫绝、看到无深度或翻译差的书时破口大骂的那种愤青状态。但今年上半年的一次机遇,让我也成为了写技术书给大家分享学习心得的作者,现在想来,多少还是有一些不可思议。《大话设计模式》刚出版,是不是好书需要时间来检验,但的确它是一本很特殊的书。《大话设计模式》为什么要用对话手法写技术书,...2008-03-28 11:41:19 · 119 阅读 · 0 评论 -
state patten 读书笔记
允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。1。状态模式允许一个对象基于内部状态而拥有不同的行为。2。和程序状态机(PSM)不同,状态模式用类代表状态。3。Context会将行为委托给当前状态对象。4。通过每个状态封装进一个类,我们把以后需要做的任何改变局部化。5。状态模式和策略模式有相同的类图,但是他们的意图不同。6。策略模式通常会用行为或算法来配置Conte...2008-03-25 14:53:35 · 96 阅读 · 0 评论 -
Iterator patten 读书笔记
提供 一种方法 顺序访问 一个聚和 对象中的各个元素,而又不暴露其内部的表示或实现。迭代器模式让我们能游走于聚合内的每一个元素,而又不暴露其内部的表示。把游走的任务放在迭代器上,而不是聚合上。这样简化了聚合的接口和实现,也让责任各得其所。1.迭代器允许访问聚合的元素,而不需要暴露它的内部结构。2.迭代器将遍历聚合的工作封装进一个对象中。3.当使用迭代器的时候,我们依赖聚合提供遍历。...2008-04-10 18:07:29 · 77 阅读 · 0 评论