设计模式
昉钰
这个作者很懒,什么都没留下…
展开
-
4 设计模式之观察者模式(四)
适用场合:当一个对象的改变需要同时改变(且它不知道多少个其它对象需要改变)其它对象时,我们就可以使用观察者模式,其实它所做的工作就是在解除耦合,让耦合的双方都依赖于抽象,而不是依赖于具体的细节或者详细信息,从而使得各自的变化不会影响到另一边的变化。那么什么是观察者模式呢?观察者模式又叫发布-订阅模式,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题,当这个主题发生变化时,会原创 2015-05-24 10:18:47 · 312 阅读 · 0 评论 -
1 设计模式之简单工厂(一)
实际应用中会用到很多的设计模式,设计模式不属于技术实现,但是它会帮助你把代码实现得更优美,使用设计模式的目的就是要使你的代码便于维护、便于扩展、便于复用同时灵活性又好,下面对这几个词语解释解释:便于维护:此谓可维护,就是你的代码可修改,什么叫可以修改呢?就是要修改的时候只需要修改要改的地方即可,而不会牵扯到不相关的地方。便于扩展:此谓可扩展,就是你的代码或者模块要增加功能,只需要增加功能即原创 2015-05-20 20:40:44 · 385 阅读 · 0 评论 -
6 设计模式之适配器模式(六)
适用场合:当我们想使用一个已经存在的类,但是它的方法(就是接口)和你的要求不同时就应该考虑使用适配器模式,更具体些就是当两个类所做的事情相同,但是他们具有不同的接口时就应该考虑使用它,这时客户端代码就可以统一的调用接口了,这样就可以 更简单、更直接、更紧凑。这是个什么设计模式呢?上面介绍的适用场合就是适配器模式,它将一个类的接口转换成客户希望的另一个接口,适配器模式使得原本接口不兼容而不可以一原创 2015-05-31 21:07:40 · 415 阅读 · 0 评论 -
2 设计模式之工厂方法(二)
上一篇关于设计模式中“简单工厂”模式的介绍让我们知道,它虽然有自己的优点,工厂类中包括了必要的逻辑判断,让客户端选择实例化相应的类,这样的好处就是除去了下具体实现的依赖,但是在我们也分析了在面临添加新功能时,它会违背设计模式里面的“开放-封闭”原则,于是引出了今天介绍的工厂方法模式,它相比简单工厂的不同之处就是它把选择实例化的类移到了客户端,这样的话在添加新功能时仅仅只需要添加新功能和修改相应的客原创 2015-05-21 09:26:52 · 314 阅读 · 0 评论 -
5 设计模式之状态模式(五)
适用场合:控制一个对象的状态转换的条件表达试过于复杂时,有可能出现过多的if else语句,此时可以把状态的判断逻辑移到一系列表示不同状态的类中,此时可以简化状态的判断逻辑,而且需要增加判断逻辑时,只需要增加一个状态类就可以了,如果需要修改也只需要修改相应的状态类就可以了,而不会违背面向对象的设计原则之一:开放-封闭原则。那么状态模式的好处是什么呢?其实从上面的分析我们已经知道了,那就是它可以原创 2015-05-31 15:43:28 · 390 阅读 · 0 评论 -
3 设计模式之构建者模式(三)
在应用中我们通常会创建一些类型相同的对象,但是这些对象又有不同的内部表示,不过构造这些对象的方法或者顺序都是一致的,只不过具体的内部表示不一样而已,这个时候我们就可以使用所谓的构建者模式,它专门会构造这种类型的对象提供了便于扩展的解决方案,它把对象的构建与表示分离,使得相同的构造过程可以表示不同的对象。下面是构建者模式客户端的组装代码:public class PersonBuilderCli原创 2015-05-23 10:46:42 · 277 阅读 · 0 评论 -
8 设计模式之命令模式(八)
什么是命令模式呢?将一个请求封装会一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。有何好处呢?1 它能较容易地设计一个命令队列;2 在需要的情况下,可以较容易地将命令记入日志;3 允许接收请求的一方决定是否要否决请求;4 可以较容易地实现撤销和重做;5 由于增加进新具体命令类不影响其它的类,因此增加新的具体命令类很容原创 2015-07-26 17:28:17 · 284 阅读 · 0 评论 -
7 设计模式之桥接模式(七)
适用场合:实现系统可能有多个角度分类,每一种分类都可能有变化,那么就把这种 多角度分离出来让它们独立变化,减少它们之间的耦合。什么是桥接模式呢?桥接模式将抽象部分与它的实现部分分离,使它们可以独立变化。下面是相关的主要架构代码:1 两个抽象类HandsetBrand.java、HandsetSoft.java1.1 HandsetBrand.javapackage com.ops.原创 2015-06-14 16:33:28 · 309 阅读 · 0 评论 -
9 设计模式之职责链模式(九)
什么是职责链模式呢?使多个对象都有机会处理请求,从而避免发送者和接收者之间的耦合关系。将这个对象连成一个链,并沿着这条链传递该请求,直到有一个对象处理它为止。好处是它可以简化对象的相互链接,他们公需要保存一个指向其后继者的引用,而不需要保存所有的候选接受者的引用,降低了耦合程度。同时还可以随时增加或修改处理一个请求的结构,增强了给对象指派职责的灵活性。不过它也有不好的一面,那就是一个请求极原创 2015-07-26 17:43:32 · 346 阅读 · 0 评论