阿里妹导读:现实工做中常常能够听到这样的说法:框架的升级带来协议性能的提高、编程模式的变革带来业务的飞跃...... 姑且不论这些表述是否有问题,实际上若是系统地看待事物总体,可能会有不同的发现。以LINUX为例,尽管其内核大获成功,但若是不是遵循POSIX、并成为一个开源、精简的UNIX实现,很难想象其最终会有何种发展。所以,对事物进行全局和必定深刻的探究有时会有更多启发。编程
今天,阿里高级无线开发专家所为将结合本身多年的经验,为你深刻阐述整个 Android 技术域及移动研发生态,期待与你们共同探讨。架构
架构的工程意义在于:定义并解决一类问题,为需求到实现的平稳过渡提供保障。传统意义的Android架构(图1)已被人熟知,但不一样角色的视角不一样,例如认为Runtime和框架是其核心、或者将Android看作是一种特异性JVM平台、还有从嵌入式出发将其看作是Linux…… 实际上,Android是极少数几个用设计来解决自身发展问题的系统,其核心在于经过硬件抽象、组件化、接口层三种能力来为发展提供基础,并为诸多变数预留大量可操做、斡旋的空间。框架
图1. Android传统架构组件化
1.1 发展的前提:硬件抽象性能
2008年,我国迈入3G时代前夜,基础设施的变革让移动领域充满变数,不管设备、硬件仍是软件都均未定型。擅长架构和软件的Google在这一领域要得到生存和长足发展,须要团结一切可能的、甚至是未知的力量,取得移动运营商、芯片供应商、手机制造商的支持则是生存的第一步。spa
原文连接设计