Android是个内置支持Java的操作系统,Android应用程序使用Java语言编写。Android开发水平的高低很
大程度上取决于Java语言核心能力是否扎实。另外一方面,3G应用往往会和企业级应用相互结合。因此,在
3G—Android课程体系中将Android课程与Java EE课程紧密结合,以Android课程为主,以Java EE课程为辅,
配合真实的企业级项目,不但可以深入掌握基于Android平台的智能手机开发技术,更重要的是还系统掌握了
智能移动终端与Java EE服务器端相结合的诸多领域商业的应用。
Java试图通过新的方式解决软件编写的复杂性。很多人认为Java语言做到了它承诺的一切。但是Java并不是
一门的语言。
折叠整体性
并不是所有的工程和环境需要企业级别的复杂性,比如一个简单的个人网站或者自编程的程序师所写的程
序。这些程序师会发现Java的复杂管理对于自己要做的程序来说过于强大了。一些人觉得Java在面向对象上
面做的没有Ruby和Smalltalk纯粹。但是新出现的用Java实现的语言Groovy解决了这些问题。
作为一种已经创建的新技术,Java显然综合了很多语言的特性,比如C++、C语言、Python等等。一些对于
Java的评论认为Java的不变性在动摇。
折叠语言问题
有些程序师不喜欢原始类型(primitive type)和类(class)的分离,尤其是那些曾经使用过Smalltalk和
Ruby的程序师。Java的代码相对于其他的代码来说过于冗长,这与它的轻便化声明相违背。
Java是一种单层继承的语言。这也导致了程序师在试图使用多重继承时候的不便,而很多语言都可以使用这
个特性。但是Java可以使用接口类,把多重继承可能导致的风险减少到小。Java不支持运算符重载,这是
为了防止运算符重载使得代码的功能变得不清晰。但是用Java实现的语言Groovy可以进行运算符重载。过去
Java对于文本的操作和其他语言,比如Perl和PHP相比差的较多,但Java在1.4版本时候引入了正则表达式。
折叠类库问题
使用Swing平台编写的带有GUI(图形用户接口)的程序和其他原始程序非常不同。选用AWT工具包编写程序的
程序师看到的都是原始接口,而且也无法获得的GUI编程支持,如果使用的话,就要提供每个平台上面所
需的API,这将是一项庞大的工程。Swing则是完全用Java语言所写的程序,避免了接口元素重复的问题,只
使用所有平台都支持的基本的绘图机制。但是很多用户不知道如何在Java风格和Windows风格之间进行转换
,结果造成了Java程序的接口在很多程序中非常特殊。苹果电脑已经提供了优化过的Java运行时程序,包含
了Mac OS X的经典Aqua接口风格。
折叠性能问题
由于Java编译器和虚拟机的不同对Java代码的性能影响比语言本身的影响大的多,所以统一讨论Java的程序
的性能经常是有误导性的。据IBM的数据,在同样的硬件上2001年时的IBMJDK版本的性能是1996年的JDK版本
的十倍左右。即使是在同一时期,不同公司的JDK和JRE的性能也不一样,比如SUN、IBM、BEA等公司都有自己
开发的JDK和JRE。
Java语言的一些特性不可避免的有额外的性能代价。例如数组范围检查、运行时类型检查等等;Java程序的
性能还会因为不同的动态复杂性和垃圾处理机制使用的多少而各有不同。如果JVM的实现比较优化的话,那么
这些功能甚至可以增加存储器分配的性能。这和总是使用STL或者托管C++的程序的情况类似。
Java的设计目的主要是安全性和可携性,所以对于一些特性。比如对硬件架构和存储器地址访问的直接访问
都被去除了,如果需要间接调用这些底层功能的话,就需要使用JNI(Java本地接口)来调用本地代码。而间
接访问意味着频繁调用这些特性时性能损失会很大,微软的.NET平台也有这样的问题。
Java的诞生是对传统计算机模式的挑战,对计算机软件开发和软件产业都产生了深远的影响:
1.软件4A目标要求软件能达到任何人在任何地方在任何时间对任何电子设备都能应用。这样能满足软件平台
上互相操作,具有可伸缩性和重用性并可即插即用等分布式计算模式的需求。
2.基于构建开发方法的崛起,引出了CORBA国际标准软件体系结构和多层应用体系框架。在此基础上形成了
Java.2平台和.NET平台两大派系,推动了整个IT业的发展。
3.对软件产业和工业企业都产生了深远的影响,软件从以开发为中心转到了以服务为中心。中间提供商,构
件提供商,服务器软件以及咨询服务商出现。企业重塑自我,B2B的电子商务将带动整个新经济市场,使
企业获得新的价值,新的增长,新的商机,新的管理。
4.对软件开发带来了新的革命,重视使用第三方构件集成,利用平台的基础设施服务,实现开发各个阶段的
重要技术,重视开发团队的组织和文化理念,协作,创作,责任,诚信是人才的基本素质。