
设计模式
jijiaa12345
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
转:【HeadFirst 设计模式学习笔记】1.策略模式
原文地址: http://www.cnblogs.com/gnuhpc/archive/2012/10/16/2726440.html 1.书中举了一个鸭子类的设计,有些会飞或者会叫,有些不会飞可能也不会叫,用继承则导致不该有的功能通过继承而继承了下来,使用接口则代码无法做到最大程度的重用。进而引出设计原则1:找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在...原创 2016-06-14 11:34:09 · 124 阅读 · 0 评论 -
转:【HeadFirst 设计模式学习笔记】2 观察者模式
原文出处:http://www.cnblogs.com/gnuhpc/archive/2012/12/17/2822398.html 1.我们需要理解报社、订阅系统和订报人之间的关系,订报人通过订阅系统订报,一旦报社有新的报纸,订阅系统就会派人送或者邮寄给订报人新的报纸。然后,出版者+订阅者就是观察者模式,只不过名称不一样,主题(Subject,或者叫做Observabler)类比于出版...原创 2016-06-14 14:07:07 · 117 阅读 · 0 评论 -
转:【HeadFirst 设计模式学习笔记】3 装饰模式
原文出处:http://www.cnblogs.com/gnuhpc/archive/2012/12/17/2822401.html 1.这个模式可以称为“给爱用继承的人一个全新的设计眼界”的模式。牵扯到第五个设计原则:“类应该对扩展开放,而对修改封闭”。但是要注意,遵循这一标准会带来更多层次上的抽象,增加代码的复杂度,所以并不是所有类都要这样设计。 2.文中举了一个为辛巴克咖啡馆写...原创 2016-06-14 14:07:55 · 146 阅读 · 0 评论 -
转:【HeadFirst 设计模式学习笔记】4 工厂模式
原文出处:http://www.cnblogs.com/gnuhpc/archive/2012/12/17/2822403.html 1.我们在前边提到一个原则就是“面向接口而不要面向实现编程”,但是我们一直在使用Duck duck = new MallardDuck()这样的模式,后边的new语句却违反了这个原则。工厂方法就可以解决这个问题,它用来封装对象的创建。 2.这一节我们考...原创 2016-06-14 14:09:55 · 113 阅读 · 0 评论 -
转:【HeadFirst 设计模式学习笔记】5 单例模式
原文出处 http://www.cnblogs.com/gnuhpc/archive/2012/12/17/2822409.html 1.单例模式确保一个实例被创建,并且任意时刻都只有一个对象。它给了我们一个全局的访问点,又屏蔽了全局变量的缺点。可以被用来管理共享资源,比如数据库连接或线程池。特征是构造函数为私有,然后声明一个私有静态成员作为类对象,对外提供一个静态类方法创建该对象,在创建...原创 2016-06-14 14:11:03 · 163 阅读 · 0 评论