- 博客(6)
- 资源 (3)
- 问答 (1)
- 收藏
- 关注
原创 访问者模式
访问者模式大多数情况下,你都不需要这么个模式。适用场景,非常复杂:1. 你需要对一个含有不同种类的对象的集合,进行遍历操作。如果,这个操作时相同的,那就简单了,只需要让生成这些对象的类实现同一接口或者继承相同的类就可以了。2. 针对不同种类的对象的操作不同。不使用访问者模式,你可能需要一些判断。3. 针对相同种类的对象的操作还可能会改变(即
2012-04-19 08:52:12 403
原创 建造者模式(学习笔记)
建造者模式建造者模式是创建复杂对象才使用的设计模式。适用场景:在你的设计当中,有一个特别复杂的类,这个类是由多个对象组合而成,创建自然也比较复杂。而它的创建方式也有很多种(由不同的对象组合而成),这时,我们希望把这个类的构建与其表示分离开来,这样既方便构建,还可以代码复用。定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。建造者模式是一种对象创建型模式。
2012-04-14 20:43:21 381
原创 适配器模式(学习笔记)
适配器模式适配器,很简单,很常用。适用场景:举个例子就明白了:你有个电器,是双向插头的,但是,你只有三项插座,怎么办?你可以买一个带有双向插座的插排,当然插排的插头是三项的。这个插排,就充当着适配器。在我们软件设计过程中,场景就是这样的:1.有时,工具箱或类库不能够被使用的原因是因为其接口与应用程序所需要的接口不兼容。2.我们不能更改库接口,因为我们可能没有它的源代码。
2012-04-05 20:37:47 475
原创 责任链模式(学习笔记)
责任链模式 这不就是一个踢皮球模式么?!适用场景: 链式处理结构。 什么是链式处理结构? 我记得看新闻,经常有群众想要解决一个问题,先去A部门,A部门说,这事不归我管,去B部门吧。到了B处,也说不归他们管,让去找C去。。。这个群众就被这么像皮球一样踢,就怕来回踢,踢出个环来,就死循环了。这就是一个链式处理结构。比如,你要请假
2012-04-05 18:23:23 774
原创 设计原则(学习笔记)
设计原则迪米特法则:将类和成员的可访问性降到最小化,每一个软件单位对其他的单位都只有最少的知识,而且 局限与那些与本单位密切相关的软件单位,迪米特法则也称最少知道原则。这个思想的意图就是要降低类之间的耦合度,大家都知道,耦合性越低,我们修改起来就越容易。合成复用原则: 优先使用对象的组合,而非类的继承。 什么是组合? 说白
2012-04-03 11:04:07 457
原创 装饰模式(学习笔记)
装饰模式装饰模式(Decorator Pattern)还有一个名字,包装器(wrapper),后面的名字,更贴切。适用场景(个人理解):我们想动态扩展一个对象的功能,更具体的说:想在一个对象调用的某个方法之前或之后加一些操作,以扩展其功能。装饰模式让上述想法实现像穿衣服一样简单而优雅!举例:我们想向一个组件加一个边框。上述需求可以通过继承来实现,但是十分不灵活,假设你又想加一个
2012-04-02 10:57:34 379
maven的聚合功能好用么
2015-07-09
TA创建的收藏夹 TA关注的收藏夹
TA关注的人