关于Oracle收购Sun的原因有种种猜测,下面这些猜测你可能都已经听说过了:
*Oracle公司期望达到IBM一样的高度和地位,他需要被人们认为他是一个大型供应商,具有提供应用、平台以及数据库等一整套服务的能力,也就是所谓的一站式服务。
*Oracle已经在应用和数据库市场发挥得淋漓尽致了。要想继续在这个领域做大做强,在硬件业务领域进行扩张是它的主要途径。
*此次收购也很可能是Oracle为了应对微软收购SAP公司这则传言所做出的长期性策略。
虽然收购的原因对很多人来说是很重要的信息,但是我最为关注的问题是Java技术将何去何从,要知道Sun花了15年精力来创建、培养和发展Java。我常常说Java就是COBOL, 因为现在几乎所有的业务应用里都能找到Java的痕迹。尽管在软件开发行业,关于Java的流言每每都甚嚣尘上,但结果往往大都不攻自破了。但是我们还是可以从历史经验里寻出一些脉络,分析一下Java的前途。
如果单纯从Java的角度来看Oracle的收购,最关键的三个问题就是:
1.Java标准制定组织(Java Community Process)是否还将继续存在?
2.Apache软件基金会(Apache Software Foundation)和Sun之间的纷争能否得到解决?
3.Oracle公司能否通过把持对JDK的TCK授权获得Java的知识产权(IP)?
以下为详述:
Java标准制定组织(Java Community Process)是否还将继续存在?
Oracle本来就是JCP的执行委员,他们已经提交了80多条 Java标准提案( Java Specifiation Request )。Oracle已经承诺长期参与JCP,它还向其它参与者表示,JCP需要变得更加开放、透明和供应商中立(vendor-neutral)。特别是在2007年12月12日,Oracle提出以下建议:
第1号决议 (Oracle提议,BEA公司附议)
执行委员会(Executive Committee )认为,JCP将努力成为一个开放的、独立的、供应商中立的标准制定组织(Standards Organization),所有成员参与公平竞争且必须满足以下几点要求:
*会员共同承担开发和管理费用;
*一个有规章制度的法律实体、管理机构、成员等;
*新的,简化的授权策略(IPR Policy)将允许尽可能多的实现;
*严格的兼容性要求;
*致力于促进Java编程模型。
另外,执行委员会将推出措施以期使这种转换越快越好,以尽量减小对Java社区的影响。
所以如果不出意外,Oracle还将继续支持JCP,只不过变成了一个完全不同的JCP。如果Oracle能成功地实施它所计划的改革,那结果将会非常有趣而且将产生广泛的影响。关于Oracle将如何实施这一计划,也是一个很有意思的事情,从中也将可以看出Oracle将如何处理Java 。
Apache软件基金会(Apache Software Foundation)和Sun之间的纷争能否得到解决?
Apache和Sun之间的纠葛由来已久,双方积怨颇深。大概情况是这样的:
1. Apache Harmony Project想要创建一个基于Java SE 5.0的JDK,以及一个ASF授权的模块化虚拟机。
2.Sun公司通过OpenJDK项目把JDK开源化了。
3.如果要成为被认证的JDK ,Apache Harmony就必须通过Sun公司的技术兼容工具包( Technology Compatibility Kits)测试.
4。Sun公司指出Harmony是基于JDK 5.0 这个老版本开发的,而非最新的JDK(那个时候是6.0版),于是认证问题悬而未决,Harmony Projec也便被束之高阁了。
时至今日,OpenJDK监管会仍没有解决这些争端。Oracle如何处理这个问题是窥测它的Java策略的第二只晴雨表。
Oracle公司能否牢牢控制住Java的知识产权
与JDK认证相关的许多法律问题把Java问题搅得非常复杂。例如,除非你通过了为OpenJDK拟定的TCK认证,否则你就无法合法使用Java的知识产权。也就是说,在这种情况下,你的JDK实际是没有经过认证的。
因为我们没有Java SE 7的规范,Sun公司也没有打算推出,这就会导致我们没法使用官方的OpenJDK 7了。Oracle可以采取同样的做法不发布一个规范或者TCK,那样它仍能保护它的知识产权。
小结
你应该已经认识到,上面这三个问题其实是相互关联的,每个答案本身可能都有不同的水平和层次。例如:
*JCP应该会继续存在,但是在引领Java方向上它可能会扮演另外的角色。
*管理上的不同可能会使得在ASF问题重新简单化,从而一举解决那段纠纷。
*Oracle可能会推出一个新的JDK规范和TCK认证,兑现所作的开放 JDK的承诺。
这几个因素的走向将让Java开发者社区清楚地看到Oracle会如何运营Java。我们拭目以待吧。
-- 学海无涯