模板模式,如Activity:
每次新建一个Actiivty时都会覆盖onCreate,onStart等方法,这些方法在 父类中就相当于一个模板
2、观察者模式
Listener都相当于一个观察者,对一些事件的响应都进行观察,当发现有响应就进行做相应的处理
3、单例模式
1. 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定义一种远程服务时就需要用到代理模式。
第二篇:Android应用程序设计学习总结
学习总结
Android具有开放性。有一下平台优势:
一、开放性
在优势方面,Android平台首先就是其开发性,开发的平台允许任何移动终端厂商加入到Android联盟中来。显著的开放性可以使其拥有更多的开发者,随着用户和应用的日益丰富,一个崭新的平台也将很快走向成熟。
开发性对于Android的发展而言,有利于积累人气,这里的人气包括消费者和厂商,而对于消费者来讲,随大的受益正是丰富的软件资源。开放的平台也会带来更大竞争,如此一来,消费者将可以用更低的价位购得心仪的手机。
二、挣脱运营商的束缚
在过去很长的一段时间,特别是在欧美地区,手机应用往往受到运营商制约,使用什么功能接入什么网络,几乎都受到运营商的控制。从去年iPhone上市,用户可以更加方便地连接网络,运营商的制约减少。随着EDGE、HSDPA这些2G至3G移动网络的逐步过渡和提升,手机随意接入网络已不是运营商口中的笑谈,当可以通过手机IM软件方便地进行即时聊天时,再回想不久前天价的彩信和图铃下载业务。
互联网巨头Google推动的Android终端天生就有网络特色,将让用户离互联网更近。
三、丰富的硬件选择
这一点还是与Android平台的开放性相关,由于Android的开放性,众多的厂商会推出千奇百怪,功能特色各具的多种产品。功能上的差异和特色,却不会影响到数据同步、甚至软件的兼容,如同从诺基亚Symbian风格手机一下改用苹果iPhone,同时还可将Symbian中优秀的软件带到iPhone上使用、联系人等资料更是可以方便地转移。
四、不受任何限制的开发商
Android平台提供给第三方开发商一个十分宽泛、自由的环境,不会受到各种条条框框的阻扰,可想而知,会有多少新颖别致的软件会诞生。但也有其两面性,血腥、暴力、情色方面的程序和游戏如何控制正是留给Android难题之一。
五、无缝结合的Google应用
在互联网的Google已经走过xx年度历史,从搜索巨人到全面的互联网渗透,Google服务如地图、邮件、搜索等已经成为连接用户和互联网的重要纽带,而Android平台手机将无缝结合这些优秀的Google服务。
总结了以上优点,但Android本身也有缺陷,千万不要钻太深和它较劲,走不过去的地方就想其他路绕,只要简约朴实不俗套,程序功能健壮就可以;另外多加几个Android开发者论坛社区下源码发帖求助,正所谓熟能生巧!