Google发布Android,Sun何去何从?

最近Google宣布成立了一个由三十多家手机生产商、移动运营商(其中包括中国移动)和其他科技公司组成的“开放手机联盟”,并于上周发布了Android,一个为开发者设计的开放软件平台,由操作系统、类库、应用程序框架和应用软件组成的全面整合的移动“软件栈”。然而Android并没有真正采用“纯正Java”路线,这又将Sun推到了一个比较尴尬的境地。

开放手机联盟的成立,尤其是其宣称对Java的支持,对Sun来讲无疑是一个好消息。因为Sun可以借助Google及手机开放联盟的影响力进一步拓展Java的应用领域。因此,Sun公司CEO Jonathan Schwartz对OHA的成立及其宣称对Java/linux的支持表示了赞赏 :

我仅代表Sun,衷心地祝贺Google宣布他们新的Java/Linux电话平台——Android。祝贺!

我也希望Sun成为围绕该平台提交完整开发环境的第一个平台软件公司,因为我们Sun在努力投放针对移动设备的NetBeans开发环境。显而易见,我们已经做了大量的工作以支持在所有基于Java平台上工作的开发者,我们将Google的Android加入列表。

可是在Google公布了Android平台之后,人们发现,Google并没有沿着“纯正Java”路线走下去,它并没有提供一个Java SE或Java ME的完整版本,而是另辟蹊径 ,Android只是用了Java的很小一部分子集,并使用了自己的Dalvik虚拟机。很明显,这可以看作是Java阵营的再次“分裂”。

因此Sun紧接着又表示了对Android的担忧 ,担心Google的Android项目会造成数种互不兼容的Java版本。在甲骨文的OpenWorld大会上发言时,Sun负责软件业务执行副总裁格林表示:

Sun希望与Google合作,解决可能出现的任何问题。他说,我们真的有兴趣与Google合作,确保开发人员无须面对一个“分裂的”环境。我们已经与Google进行了接触,确保这些平台和API的兼容,使应用软件能够被部署在尽可能多的平台上。

Sun公司一直在避免Java环境的分裂而努力着。前不久,Sun所推出的JavaFX Mobile 也是用于移动设备的一个从操作系统到框架和应用的完整套件,它构建在Sun所收购的SavaJe套件之上:

1.JavaFX Mobile是一个完整的移动套件和实现。它不仅仅是一套规范,还是一个实际(单一)实现。基本上它是完全用Java编写的全套 OS + 应用 + API 。只有内核和一些设备驱动是用C编写的。
2.我们可以在信号场内更新系统。移动市场将不再被存在bug的旧实现或当前特性所分割。每个设备可以在该平台的同一版本上工作。
3.JavaFX Mobile是为高端电话设计的,这意味着它具备了JavaSE的能力。

其中第三点是最重要的一点。我们的长期目标是使JavaSE和JavaME趋于一致。你不再需要了解多个API。只有一个Java。

Sun统一Java开发环境的想法是非常好的。但是Google Android的出现,对Sun在防止Java环境分裂方面所做的努力是一个打击。JavaFX Mobile与Android相比,单从平台的基本特征看,一时还看不出谁优谁劣,但是开放性对于Android来说是非常重要的,它是Android赖以生存的根本。因此Apache Labs开发人员Stefano Mazzocchi认为 ,Google可能是将开发Dalvik作为避免使用J2ME所带来的与Sun之间的许可问题。这让人联想到长久以来Apache 就OpenJDK的许可问题与Sun所发生的争执。

解铃还需系铃人,或许Sun自身就是导致今天Java不断分裂的重要原因。

你可能感兴趣的:(Google发布Android,Sun何去何从?)