Android中常用的设计模式简单总结
2017-10-10 20:04
323 查看
1.单例模式
保证一个类仅有一个实例,并提供一个访问它的全局访问方法。Android中的系统级服务都是通过容器的单例模式实现方式,以单例形式存在,减少了资源消耗。
2.建造者(Builder)模式
将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。链式结构代码通常会采用建造者(Builder)模式实现。
如AlertDialog.Builder等。
3.适配器模式
将一个类的接口转换成客户希望的另外一个接口。不同的数据提供者使用一个适配器来向一个相同的客户提供服务。
如列表中的Adapter。
4.观察者模式
一个对象发生改变时,所有信赖于它的对象自动做相应改变。如:RxJava框架,ContentObserver监听ContentProvider数据变化等。
5.命令模式
把请求封装成一个对象发送出去,方便定制、排队、取消。如:Handler机制。
6.策略模式
定义了一系列封装了算法、行为的对象,他们可以相互替换。如:Java.util.List就是定义了一个增(add)、删(remove)、改(set)、查(indexOf)策略,至于实现这个策略的ArrayList、
LinkedList等类,只是在具体实现时采用了不同的算法。但因为它们策略一样,不考虑速度的情况下,使用时完全可以互相替换使用。
7.状态模式
状态发生改变时,行为改变。如:View.onVisibilityChanged方法,就是提供了一个状态模式的实现,允许在View的visibility发生改变时,引发执行
onVisibilityChanged方法中的动作。
8.装饰模式
动态地给一个对象添加一些额外的职责。就扩展功能而言,它比生成子类方式更为灵活。示例:Activity继承自ContextThemeWrapper,ContextThemeWrapper继承自ContextWrapper,ContextWrapper才是继承自Context。
ContextWrapper就是我们找的装饰者。
9.工厂模式
工厂模式主要是为创建对象提供过渡接口,以便将创建对象的具体过程屏蔽隔离起来,达到提高灵活性的目的。工厂模式可以分为三类:
1)简单工厂模式(Simple Factory) 2)工厂方法模式(Factory Method) 3)抽象工厂模式(Abstract Factory)
这三种模式从上到下逐步抽象,并且更具一般性。
如:BitmapFactory工厂方法。
10.原型模式
用原型实例指定创建对象的种类,并且通过拷贝这个原型来创建新的对象。如:比如我们需要一张Bitmap的几种不同格式:ARGB_8888、RGB_565、ARGB_4444、ALAPHA_8等。
那我们就可以先创建一个ARGB_8888的Bitmap作为原型,在它的基础上,通过调用Bitmap.copy(Config)来创建出其它几种格式的Bitmap。
11.组合模式
将对象组合成树形结构以表示“部分-整体”的层次结构。如:View和ViewGroup的组合。
12.代理模式
为其他对象提供一个代理以控制对这个对象的访问。如:AIDL。
13.中介者模式
用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。如:Binder机制。
参考:http://blog.csdn.net/happy_horse/article/details/50908439
相关文章推荐
- android常用的设计模式总结 一
- Android开发 安卓中常用设计模式总结
- android学习日记28--Android中常用设计模式总结
- 常用设计模式总结--适配器模式
- MVC,Android体系结构,常用设计模式
- 设计模式——创建型设计模式总结(简单工厂、普通工厂、抽象工厂、建造者、原型和单例)
- 常用设计模式总结--桥接模式
- 常用设计模式总结--抽象工厂
- Java中常用的设计模式总结
- 设计模式——创建型设计模式总结(简单工厂、普通工厂、抽象工厂、建造者、原型和单例)
- 常用设计模式总结及体现
- Java中常用设计模式总结(转贴)
- 《Android之大话设计模式》--设计模式 创建型模式 第一章:简单工厂模式
- 设计模式6大设计原则--简单总结
- JAVA常用设计模式总结
- 常用设计模式总结--责任链模式
- 设计模式学习笔记七:常用设计模式原则总结
- JAVA常用设计模式总结(单例,工厂,抽象工厂)
- 常用设计模式总结--单立模式
- Java中常用的设计模式总结