android中重要用到的几种设计模式总结(转)

android中主要用到的几种设计模式总结(转)
1、模板模式,如Activity: 
      每次新建一个Actiivty时都会覆盖onCreate,onStart等方法,这些方法在 
  父类中就相当于一个模板 
2、观察者模式 
     Listener都相当于一个观察者,对一些事件的响应都进行观察,当发现有响应就进行做相应的处理 3、单例模式 
3. Application 单例模式   
目的: 
希望对象只创建一个实例,并且提供一个全局的访问点。 结构是简单的,但是却存在一下情况; 
1.每次从getInstance()都能返回一个且唯一的一个对象。 2.资源共享情况下,getInstance()必须适应多线程并发访问。 3.提高访问性能。 
4.懒加载(Lazy Load),在需要的时候才被构造。 
 
4、适配器模式 
   适配器模式是一种重要的设计模式,在 android 中得到了广泛的应用。适配器类似于现
实世界里面的插头,通过适配器,我们可以将分属于不同类的两种不同类型的数据整合起来,而不必去根据某一需要增加或者修改类里面的方法。 
在 android 中常见的适配器类有: BaseAdapter 、 SimpleAdapter 等 ,首先我们看看 android 应用层是如何使用适配器的: 
综合 listview 和 gallery ,发现它们有着类似的实现过程,在 setAdapter 里面获取 
适配的 item 的个数,然后通知各自的控件构造这些 item ,构造的时候会通过适配器来获取需要适配的 view 。 
5,工厂模式 
ndroid中的应用:创建位图 
Bitmap bitmap=BitmapFactory.decodeResource(getResources(), R.drawable.ic_action_search) 
这条语句相信我们经常用到,BitmapFactory顾名思义,就是位图工厂,专门用来将制定的图片转化为指定的位图Bitmap。因为图片来源的不同可能导致图片大小,格式类型等的多种多样,这样就导致了生成目标对象的复杂度,因此通过工厂统一的加工成同样大小,类型的”标准件“,大大简化了代码的复杂度与工作量。如activity 的基类父类等,抽象父类来生成对应的实际子类。 
6,代理模式 
Android系统中利用AIDL定义一种远程服务时就需要用到代理模式。