经常听说学Android开发首先要学Java语言,后来又听说还有Java开发这个行业,很是好奇,Android开发和Java开发有什么区别?之前了解到Android系统是基于Linux内核和驱动都是使用C/C++语言做开发,为什么又要选择Java作为开发语言呢?经过最近研究发现,原来是这么回事,废话不多说,我们直入正题吧。
Android开发和Java开发有什么区别?
其实这个问题是个范围问题,Android开发是Java开发的一个分支。Java是一种语言, 以Java语言为基础的开发都可以是Java开发,Java开发包含的方面太多。Android是一个应用平台,Android开发包括Android应用开发、Android系统开发等。Java开发当然是要掌握Java语言,Android开发的话就不一定了。如果你了解Android框架,并掌握C/C++,也可以开发Android的驱动什么的。
为什么要选择Java作为开发语言呢?
首先Android操作系统是开源的,这个相信大家应该都了解的,其开源的初衷便是希望通过该措施整合所有的手机硬件提供商以及手机生产厂商,说的更本质一点的就是谷歌希望让Android系统能运行于任何不同类型的硬件上,而其中的硬件主要便是指CPU,其中包括,高通、三星,甚至包括国产的华为(海思处理器)。如果要让一个App(应用程序)能够在各种不同的平台设备上运行,开发语言就必须跨平台(也许你会问,”跨平台“是相对于不同的操作系统而言的,运行Android系统的手机虽然硬件不同,但操作系统都是Android啊?这是一个常识性的问题,跨平台包括两个概念,一个是跨操作系统,另一个是跨硬件,而我们所说的就是跨硬件。),通过跨平台屏蔽底层硬件的差异,而不必让程序员为了考虑底层硬件的不同写出不同的代码。那么是谁能够做到跨平台、一次编译到处运行并且能够保证效率?显然是Java。
同时用Java作为Android开发语言,不仅可以避免Native作为应用代码导致的因为设备多样化导致App生态了支离破碎,而且可以避来自Oracle Java的产权问题。
再者,Java在过去的发展累积下了很多为业务逻辑产生的人力资源链,而移动应用开发的人力分布基本重合,可以充分复用。这些都可以充分表明,用Java作为Android开发语言是明智之举。
网友评论