文档章节

Android之设计模式

金珂王子
 金珂王子
发布于 2015/10/05 19:06
字数 649
阅读 18
收藏 0

1. 组合器模式.组合器模式在Android随处可见,View和ViewGroup的使用就是组合器模式。


  2. 观察者模式.目标对象能够添加和删除观察者,当自己某种状态或者行为发生改变时,可通过notify通知注册的观察者进行更新操作。比如说某个ListView的数据源发生了变化,可以通过notify来通知页面进行刷新。

 

 3.单例模式。我在开发中比较常用的是将Application写成单例模式,这个在利用TabHost作导航栏的应用中较为常见。此外,数据库的相关开发用单例模式的也很多。程序只要持有一个数据库的实例就可以了。有则直接使用,没有则创建。


 4.模板模式。这个可以理解为 抽象类和子类的关系。抽象类提供了一个模板,具体如何实现可以根据自己的需求实现个性化。比如说View,我们可以自定义我们的View。View只是提 供给了我们一个模板,我们完全可以按照这个模板去定义我们自己的View。一定程度上来说,模板模式实现了代码的部分复用。


5.备忘录模式。关于这个模式的 有关资料其实不怎么多,我对这个模式有自己的理解。我觉得android中Activity的堆栈式存放时一种备忘录,另外Activity中的 onSaveInstanceSate方法和onCreate也是一种备忘,存储某些信息,当需要的时候restore一下。


6.工厂模式。我们常常会说 Spring用到了工厂模式。其实android中也用到了很多工厂模式,常见的比如说BitmapFactory。传入一些信息后,就可以帮你生产出某 些你想要的实例。工厂模式其实屏蔽了很多内部的实现,调用的时候只要使用特定的接口方法就可以生产出想要的实例。


7.适配器模式.最常用的莫过于我们自定义ListView的Adapter。这个我想每个做过android的人都不会对这个陌生吧。系统提供了很多自带的适配器,但是我们想实现更负责的功能和逻辑,还是自定义吧。


当然android的设计模式还有好多,这里说到的都是常见的。加入了个人的一些理解,可能有的理解的不对,欢迎大家指正。


本文转载自:

下一篇: Android推送比较
金珂王子
粉丝 0
博文 15
码字总数 0
作品 0
朝阳
私信 提问

暂无文章

代理模式之JDK动态代理 — “JDK Dynamic Proxy“

动态代理的原理是什么? 所谓的动态代理,他是一个代理机制,代理机制可以看作是对调用目标的一个包装,这样我们对目标代码的调用不是直接发生的,而是通过代理完成,通过代理可以有效的让调...

code-ortaerc
今天
5
0
学习记录(day05-标签操作、属性绑定、语句控制、数据绑定、事件绑定、案例用户登录)

[TOC] 1.1.1标签操作v-text&v-html v-text:会把data中绑定的数据值原样输出。 v-html:会把data中值输出,且会自动解析html代码 <!--可以将指定的内容显示到标签体中--><标签 v-text=""></......

庭前云落
今天
8
0
VMware vSphere的两种RDM磁盘

在VMware vSphere vCenter中创建虚拟机时,可以添加一种叫RDM的磁盘。 RDM - Raw Device Mapping,原始设备映射,那么,RDM磁盘是不是就可以称作为“原始设备映射磁盘”呢?这也是一种可以热...

大别阿郎
今天
12
0
【AngularJS学习笔记】02 小杂烩及学习总结

本文转载于:专业的前端网站☞【AngularJS学习笔记】02 小杂烩及学习总结 表格示例 <div ng-app="myApp" ng-controller="customersCtrl"> <table> <tr ng-repeat="x in names | orderBy ......

前端老手
昨天
16
0
Linux 内核的五大创新

在科技行业,创新这个词几乎和革命一样到处泛滥,所以很难将那些夸张的东西与真正令人振奋的东西区分开来。Linux内核被称为创新,但它又被称为现代计算中最大的奇迹,一个微观世界中的庞然大...

阮鹏
昨天
20
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部