001 Android系统架构简介

来源:互联网 发布:cad 网络拓扑图 编辑:程序博客网 时间:2024/06/06 12:26

本章节要弄懂的问题:

1. Android的系统架构是什么样?

2. Android的应用程序的开发语言为什么要采用Java


Android的系统架构是什么样?

首先来看Android的系统架构图,如图001-01所示。



                            图 001-01

Android系统从下往上可以划分为4层:Linux KernelC/C++ LibrariesJava FrameworkJava Application

1. Linux Kernel层:由Linux KernelAndroid私有的驱动和模块组成,这是Android操作系统的基础。其中Android的私有模块中有一个叫做HAL层,HAL主要是对Linux Kernel和驱动的业务逻辑级别的封装,可以对其他C/C++类库或者Java Framework层提供调用。

2. C/C++ Libraries层由两部分组成:一部分是各种C/C++的类库,供Java Framework层调用;一部分是Android Run TimeAndroid Run Time包含和Java Core LibrariesDalvik Virtual Machine,这部分提供了Java能够在Android系统上运行的必要条件。

3. Java Framework层:采用Java语言进行编写,通过JNI的方式调用C/C++ Libraries(不包括Android Run Time),将各种C/C++ Libraries封装成可以供Java方便调用的Java类库。

4. Java Application层:比较复杂,可以使用纯Java编写应用程序,即调用Java Framework层提供的各种Java类库进行编程;可以使用Android提供的NDK工具套件来进行JNI编程,即Java调用C/C++ Libraries,这些C/C++ Libraries可以是Android系统本身的,也可以是第三方或者自己编写的。


Android的应用程序的开发语言为什么要采用Java

Android的应用程序的开发语言选择Java,基于以下4点:

1. Java是面向对象的程序设计语言。面向对象的程序设计语言比面向过程的程序设计语言的开发效率高。

2. Java语言的门槛低。Java语言的学习成本比一般的面向对象的程序设计语言要低很多,而且拥有众多的开发环境和开发工具可供使用。

3. Java在开源世界中的使用人群众多。Java经过20年的发展,在开源领域的使用人群是一般程序设计语言所不能比的,使用Java编写的开源框架成千上万。

4. Java跨平台的性能极好。目前Java在跨平台的成果是目前所有程序设计语言中数一数二的,可以在各种系统平台上运行。 


Android的应用程序开发语言为什么要采用Java的原因,可以总结成一句话:得程序员者得天下。


0 0