开源之于Java SUN近来在开源方面的动作频频,当然也涉及到了Java,那么开源对 Java有什么影响,Java还能继续创造神话吗?李日贵谈了他的看法。 最早期望将Java 开源声音最大的是 IBM——早在 2004 年就由 Rod Smith 发出公开信呼吁 SUN 将 Java 变成开放源代码,让更多有能力的开源社群能适时地加入适当的组件以应对来自各方的挑战。SUN 初期是摇摆不定,因为担心开源之后会导致 Java 的跨平台能力消失,又担心向前兼容的特色不见。加上不断被迫要求表态去选择 “拥抱” 或 “离弃” 开放原始码社群,纵使 SUN 已经开放了 Solaris、NetBeans、JINI、OpenOffice 等产品,还是引来了很多人的攻击。 期间, Apache 又推出了 Harmony ( JavaSE ) 以 Apache License v2,终于在时代潮流的不断冲击之下,SUN在 2006 年 11 月以 GPL v2 的版权开放相关源代码,从 JavaSE、JavaME 到 JavaEE 都开源了。“至于在 Java 之父 James Gosling 的告天下Java社群的公开信之中,阐明了期望保有 Java 的兼容性、可靠且相互操作等特性,也说明加强测试的 TCK 让更多人愿意投入 Java 底层开发并且贡献出来。” “Java 在由Sun开放成为 Opensources 之后,这对于开发小区的发展会产生不小的影响,毕竟JVM 的确是一个了不起的平台,让我们可以忽略了许多艰深难懂的程序语言,如此一来,便可以进行更多更符合业务上的需求。”李日贵说。 此外,Java 并非没有进步,自从 JavaSE 5 Tiger 导入了 Annotation 与 Generic 等,JavaSE 6 除了加强桌面系统 swing 与 Java2D 之外,也利用 Rhino 来支持 JavaScript ,到了 JavaSE 7 Dolphin则是核心改变,利用 Dynamically Typed 整合 Script 语言更是容易,也提供了 super-package 等开发设计。 “当然,纵使SUN 不开放 Java 的源代码,也会有如 IBM JDK、BEA JRockit 与 Apache Harmony 等等,但是开源之后,就可以马上反应现代社群的需求,利用广大的开源小区进行实作,最后只需要通过标准验证与测试,就可以马上释出。但是,谁能保证每个释出都真正通过标准的验证与测试呢,又谁能保证不会有 SWING vs SWT 之争,恐怕Java的开源会有一段适应期吧。” 李日贵简介: 毕业于长庚大学电机系,擅长于 Java 于企业端整合与应用,与 Java Opensources 的研究与推广,在 2002-2003 发行 Java Opensources 电子报推广相关 Java 技术,曾任台湾 JavaTWO 技术大会 2004-2006 年的专职讲师,目前为松凌科技总经理与技术杂志作者。 |