- 博客(9)
- 资源 (2)
- 收藏
- 关注
原创 设计模式(十一)——单例模式
理解: 单例模式,当一个项目中,仅希望运行一份该类的实例时,可以用全局变量,但并不能保证该类只被初始化一次。最好的办法是类里面有内部的机制保证这一点。单例模式就是如此而来。分为了单线程下和多线程下的单例模式。Singleton和double-checked,或者饿汉式和懒汉式。优点:能够保证一个类仅被实例化一次。
2012-05-31 21:34:20 1067
原创 《设计模式解析》 第21章 Singleton 和 Double-checked模式
《设计模式解析》 第21章 Singleton 和 Double-checked模式Review QuestionsObservations1:What type of pattern is the Singleton? What general category of pattern does it belong to?工厂模式2:
2012-05-30 17:54:03 712
原创 《设计模式解析》 第20章 来自设计模式的教益:各种工厂模式
《设计模式解析》 第20章 来自设计模式的教益:各种工厂模式Review QuestionsObservation1:Define a "factory."工厂是用于封装对象的初始化过程和对象的创建使用规则。使得使用对象的客户只需要关注对象的使用。2:Name one factory pattern that was sh
2012-05-19 16:19:40 765
原创 设计模式(十)—— Template 模式
理解: Template模式,很好理解,就是写了一个通用的模板来实现一个方法,用户需要做的就是往里面(在派生类中)填充内容(实现方式)。优点:这种方式,可以很好地消除代码冗余,使得从if-else 和 复制粘贴中解脱出来。区别于Strategy:模板方法是改变算法的一部分。策略模式是使用委托改变整个算法。
2012-05-13 16:16:33 444
转载 《设计模式解析》 第19章 Observer 模式 复习题
Review QuestionsObservation1:The Template Method pattern makes the method call in a special way. What is that?将方法的调用延迟到派生类中。Interpretation1:According to
2012-05-13 15:53:41 1370
原创 设计模式(九)——Observer 模式
理解: 观察者模式,刚接触的时候,感觉这是一个十分有创意的模式。能够采用这种 “订阅---发布”的方式去将对象解耦。考虑到某个对象的改变比如一个表格改变的同时,与之关联的各种图形界面或者分析数据都需要改变,而如果让表格去通知各个对象,违背了“一个对象,一个职责”的原则。于是,添加一个第三方,即作为存储数据的第三方。当表格的变动导致了数据的改变,存储数据的对象便能够通知各个应该
2012-05-09 20:30:27 578
原创 设计模式(八)——Decorator 模式
理解: Decorator最简单的方式,就是为一个对象添加职责(并且能够适应原来使用他的对象的需求(接口不变)),但如果仅仅是为了给一个对象添加职责,而使用该模式,显得有些浪费并且冗余。实际上,想想java的I/O 流的实现,使用了大量的装饰者模式,是为了让对于流的各种格式能够方便的进行组合,以迎合不同用户的需求。称之为——动态责任链。因此,这应该算是decorator模式最大
2012-05-09 20:11:48 666
原创 《设计模式解析》 第18章 Observer 模式 复习题
Review QuestionsObservation1:According to the Gang of Four, what are structural patterns responsible for?结构型模式用于各个将已有的功能组合起来,或者将一些对象进行组合,从而实现新功能的 一些方法,且更具灵活性。2:What are
2012-05-09 20:10:13 1012
原创 设计模式(七)——迈向新的设计方式
设计模式(七)——迈向新的设计方式 之前提到了使用Alexander提到的方式去思考,去构件一个系统。这种先找出各个模式的方式有时候并不适用,因为在一些情况下,你很难找出某些隐含在系统之中的模式。从OO的原则中,我们可以悟出一些东西。“开闭原则”,需要我们对于修改封闭对扩展开放。“依赖倒置原则”,要求我们总是依赖于抽象而不应该依赖于具体类,因为具体类总是有变化的可能。上面这
2012-05-02 15:51:57 523
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人