一、基于Mashup的应用设计
Android中的Mashup是将应用切分成不同类别的组件,通过统一的定位模型和接口标准将他们整合在一起,来共同完成任务。
在Mashup的概念下构造Android应用,有三个基本要素:组件(Component)、连接和配置。
1、组件
组件就是有特定功能和接口规范的实现单元。每类组件都有着不同的设计目标,或者负责界面展示,或者负责后台服务,或者负责提供数据,或者负责事件监听。
2、连接
连接是一个抽象的概念,指的是组件之间的通信信道,是Android为不同类别的组件之间进行调用和通信预设的模式。它的实现根据连接两端组件类别的不同而有所变化。
连接的构造,是由请求连接的组件、被连接的实现组件和组件管理服务共同维护的。
3、配置
配置是用了描述组件的功能和实现特征的信息。在Android中,每个应用都有名为AndroidManifest.xml的配置文件,其中包含了该应用中所有组件的相关信息。
二、基于Mashup的应用架构特征
基于Mashup的应用,其核心是组件,应用边界、进程边界和网络边界在Android中都变得模糊而且不那么重要了。组件执行时的聚合单元是任务,每个任务都由若干个界面组件对象构成,这些组件可能来自不同 的应用,运行在不同的进程中,他们彼此独立,就像黑盒子一样,无需关注具体调用者或者被调用者的实现细节。
组件间的数据传输,都是通过消息、进程间的通信模型等序列化数据传输的方式来进行,而不是通过对象指针的直接传递,这就使得Android的应用天生具有了良好的跨进程特征。