设计模式主要分三个类型:创建型、结构型和行为型。
其中创建型有:
一、Singleton,单例模式:保证一个类只有一个实例,并提供一个访问它的全局访问点
二、Abstract Factory,抽象工厂:提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们的具体类。
三、Factory Method,工厂方法:定义一个用于创建对象的接口,让子类决定实例化哪一个类...
分类:
其他好文 时间:
2014-12-10 12:37:43
阅读次数:
201
毕竟是做Android的,对于ContentObserver是很熟悉的,在监听数据库变化时使用很频繁,android有一整套用来监听的API,直接拿来用就行了。观察者模式是用来监听对象的变化的行为型模式。 观察者(Observer)模式又名发布-订阅(Publish/Subscribe)模式。...
分类:
其他好文 时间:
2014-12-10 12:14:39
阅读次数:
181
我们无时无刻不在时刻得调整自己的计划(策略)以完成目标,就跟玩dota一样,对局面的判断不同使得装备选择不同,阵容不同也使得自己的打法不一样,调整策略时刻都在发生。这些情况在实际系统中也是经常遇到,那么在软件系统中如何实现不同的策略呢? 策略模式是一种行为型设计模式,主要是定义一系列的算法,把...
分类:
其他好文 时间:
2014-12-09 10:28:51
阅读次数:
189
解释器模式和调停者模式都是行为型模式,由于二者用的情形比较少,不作过多解读,介绍一下相关概念,以作参考。 解释器模式有点儿“编译器”的概念,像个超级简单的编译器,且跟硬件无关,它的目的是定义语言(使用规定格式和语法的代码)的文法,然后建立一个解释器来解释该语言中的句子。 在 GOF 的书中指...
分类:
其他好文 时间:
2014-12-05 12:13:35
阅读次数:
147
责任链模式听上去不太好理解,但是其实是非常简单的一种行为型设计模式。举个类比就知道它的定义了,说一个病人看牙的时候,医生不小心把拔下的一个牙掉进了病人嗓子里。各个科室的医生推卸责任,搞得病人因此楼上楼下的跑了不少冤枉路,最后无果而终。 责任链模式就是这种“推卸”责任的模式,你的问题在我这里能解...
分类:
其他好文 时间:
2014-12-03 10:30:03
阅读次数:
89
本文转载至http://www.cocoachina.com/ios/20141124/10296.html相信大家都了解GoF的《Design Patterns》中提到的23种设计模式,其中将常见的设计模式分为三大类:创建型模式、行为型模式、结构型模式。而在《Clean Code》中也提到建造酒店...
分类:
其他好文 时间:
2014-12-03 00:14:13
阅读次数:
194
一、概述
用一个中介对象(中介者)来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。中介者模式又称为调停者模式,它是一种对象行为型模式。
二、适用场景
协调多个对象之间的交互。
三、UML类图
四、参与者
1、Mediator(抽象中介者):它定义一个接口,该接口用于与各同...
分类:
编程语言 时间:
2014-12-02 22:33:50
阅读次数:
275
设计模式主要是对我们的程序进行优化,实现程序的可复用、可维护、可扩展和灵活性好等。任何一个程序并不是开发出来就算成功了,应该从各方面都能较好的适应我们的应用才可以。而设计模式就是在我们有一定的代码基础上,对我们的编程进行规范化的一个过程。
《大话设计模式》中主要讲了23种模式和6大原则,无论哪种模式,都应该符合设计模式的原则。课本上根据不同模式的特点将其分为创建型、结构型和行为型三种类型...
分类:
其他好文 时间:
2014-12-02 09:01:47
阅读次数:
144
设计模式被分成了三大类型:创建型、结构型和行为型。本文介绍一下结构型模式。
结构型模式包括适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模式和代理模式。
适配器模式:将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
应用:系统的数据和行为都正确,但接口不符时,我们应该考虑用适配器,目的是使控制范围之外的一个原有...
分类:
其他好文 时间:
2014-11-30 23:25:23
阅读次数:
210
设计模式被分成了三大类型:创建型、结构型和行为型。本文介绍一下行为型模式中的观察者模式、模板方法模式、命令模式、状态模式和职责链模式。
观察者模式:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。
优点:观察者模式解除了主题和具体观察者的耦合,让耦合的双方都依赖于抽象,而不是依赖具体。从而使得各自的变化都不会影响另一边的变化。
缺点:依...
分类:
其他好文 时间:
2014-11-30 23:14:36
阅读次数:
236