信息化 频道

甲骨文吞Sun Java何去何从?


    五、Oracle的策略

    Java是否继续开源,说来也简单,无非三种可能。

    第一种可能,Oracle延续Sun的政策,继续保持全面开源。如果Oracle对Java开源持这种态度,则说明Oracle重视Java的潜在价值,也就是Sun花费数年心血构建的,围绕在Java身边庞大而忠诚的Java开发者社区。Java开发者看重的是Java的技术领先性,如果Java终止开源协议,势必失去技术更新的后劲,慢慢丧失对开发者的吸引力,因此,只有保持开源,维持技术活力,才能留住开发者,维护社区的稳定。

    可是,这样一来,Java如何替Oracle挣钱呢?如果Java还像在在Sun手里一样,只有潜在价值而没有现实价值,Oracle对Sun的收购就部分地失去了商业意义。由此,我们可以猜测Oracle的第二种Java策略,那就是结束开源。结束开源意味着Oracle将把Java收入囊中,成为另一个类似Oracle数据库的产品,由Oracle负责研发、使用和销售。这符合Oralce的收购目的,毕竟此次收购花费了Oracle七十四亿美元之多,如果只能从Sun的三大产品服务器、Solaris和Java的两者中获得现实收益,那么Oracle的这次收购如果不算失败的话,起码也不能称为成功,因为事实证明光靠服务器和Solaris是不能维持收支平衡的。可以说,Oracle对Sun的收购,是赚是赔,全看Java,Java赚则Oracle赚,Java亏则Oracle亏。不难看出,Java的现实价值比潜在价值更符合Oracle的商业利益,因此Oralce可能结束Java开源的合理性也就容易理解了。

    如此看来,结束Java开源似乎是一个不错的选择,但是,这只是对Oralce而言,对Java来说,结束开源意味着技术上的阉割。Oracle是一个成功的企业,但Oracle在数据库技术方面,客观地说,阻碍大于贡献。关系数据库技术早在上个世纪60年代就由IBM发明,历经40多年的发展,没有产生任何革命性的突破,20年前我用SQL查询数据库,20年后SQL的语法还是那么晦涩、拗口和丑陋。编程语言从面向过程发展到面向对象,到现在几乎所有语言都具备了面向对象的特征,而数据库依然停留在40年前的水准,业界期盼了多年的对象数据库,甚至理论上都不成熟,更遑论产品化了。如果说对象数据库有技术难度,那么,一个面向对象的查询语言都没有出现,就不是技术原因能搪塞过去的了,态度才是根源。Oracle独领数据库风骚数十年,有着不可推卸的责任。

    基于Oracle在关系数据库技术上的表现,Java交到Oracle手里还真让人不放心。可见,开源,Oracle不干,而不开源,开发者不答应,那么,有没有一个折中方案呢?

    第三种可能,Oralce也许可以考虑部分开源。现在的Java,没有任何秘密,包括Java虚拟机和编译器在内的所有代码,全部向开发者公开。如果Oracle既想从Java开源中获得好处,又想让Java替自己挣钱,部分开源不失为一种折中方案。保持Java核心代码的私有性,将一些外围技术开源,完全可能达到两全其美的效果。当然,部分开源是一把双刃剑,核心代码的范围多大,这个度一定要把握准确,既不能让开发者觉得Oracle没有开源的诚意,又要保证Oracle对Java的商业主控权不旁落人手,具体操作手法上有相当的挑战性,如果掌握不好,后果可能是赔了夫人又折兵。

0
相关文章