我正在做一个关于移动平台的小研究,我想知道Android使用了哪些设计模式?
例如,在iOS中,模型-视图-控制器与委托和其他模式一起被广泛使用。
Android使用什么模式,在哪里使用?
EDIT
我并不是要求在内核、dalvik等深层使用的设计模式,而是应用程序开发人员在开发应用程序时将遇到的模式。
我正在做一个关于移动平台的小研究,我想知道Android使用了哪些设计模式?
例如,在iOS中,模型-视图-控制器与委托和其他模式一起被广泛使用。
Android使用什么模式,在哪里使用?
EDIT
我并不是要求在内核、dalvik等深层使用的设计模式,而是应用程序开发人员在开发应用程序时将遇到的模式。
当前回答
我想添加一个设计模式,已经应用在Android框架。这是在Asynctask实现中使用的半同步半异步模式。请参阅我在
https://docs.google.com/document/d/1_zihWXAwgTAdJc013-bOLUHPMrjeUBZnDuPkzMxEEj0/edit?usp=sharing
其他回答
这是一篇关于Android通用设计模式的文章:
创建型模式:
构建器(例如AlertDialog.Builder) 依赖注入(如匕首2) 单例
结构模式:
适配器(例如RecyclerView.Adapter) 外观(如翻新)
行为模式:
命令(例如EventBus) 观察者(例如RxAndroid) 模型视图控制器 (类似于上面的MVC模式)
在Notifications情况下,NotificationCompat。构建器使用构建器模式
就像,
mBuilder = new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.ic_stat_notification)
.setContentTitle(getString(R.string.notification))
.setContentText(getString(R.string.ping))
.setDefaults(Notification.DEFAULT_ALL);
我想添加一个设计模式,已经应用在Android框架。这是在Asynctask实现中使用的半同步半异步模式。请参阅我在
https://docs.google.com/document/d/1_zihWXAwgTAdJc013-bOLUHPMrjeUBZnDuPkzMxEEj0/edit?usp=sharing
Android框架中使用了多种模式,例如:
广播接收器使用观察者模式 远程服务调用使用代理模式 视图和视图组使用复合模式 媒体框架使用立面模式
在Android中,“工作队列处理器”模式通常用于从应用程序主线程中卸载任务。
示例:IntentService类的设计。
IntentService接收intent,启动工作线程,并适当地停止服务。所有请求都在一个工作线程上处理。