回顾与展望,2006与2007的Java 技术

matrix 发表于 2006-12-30 08:38:21
作者:Chris Adamson     来源:Onjava
评论数:15 点击数:2,983     投票总得分:3 投票总人次:1
关键字:Preview;Java

摘要:

与以往不同的是,2006年对于Java是具有决定性意义的一年。对于Java命运最重要的是Sun决定以GPL许可方式发布其Java实现,它已经发布了HotSpot VM、javac编译器、Java ME。而更多的源代码将会逐渐在明年开放..这是许多人在一年前不敢想像的,更没有人想到Sun会选择GPL。
      与以往不同的是,2006年对于Java是具有决定性意义的一年。对于Java命运最重要的是Sun决定以GPL许可方式发布其Java实现,它已经发布了HotSpot VM、javac编译器、Java ME。而更多的源代码将会逐渐在明年开放..这是许多人在一年前不敢想像的,更没有人想到Sun会选择GPL。

  但未来会怎样?这是一个大问题。尽管今年发生了如此多的大事,但这些事情将会如何引导发展方向? 似乎并不明显。在这篇文章中,我们将列出这些主要事件,并指出它们在2007年的发展预期。

开放源代码Java
      2006:Sun采用GPLv2发布其Java VM和编译器
  2007:期待类库、关注衍生版Java
  采用GPL发布Java编译器和VM表明Sun对于开放源代码Java是认真的,但要判断它的结果还为时过早。其一,Sun发布的是早期版Java SE 7,Sun不希望开放源代码影响在12月初发布的Java SE 6。Sun发布的代码还缺乏打造一个有用的Java环境所需要的类库。

  提供类库的挑战之一是,必须从数百万行代码中找出Sun可以在Java中使用、但无权以GPL方式发布的代码。其中一些代码已经有了开放源代码版替代品,但是,Sun还必须重新许可、编写、放弃一些代码,这是不可避免的。

  除此之外的一大问题是,在采用GPL后,人们会如何“处理”Java。除了与在一些版本的Linux中包含Sun的JVM所牵涉的“政治性”问题和将JVM移植到Sun没有兴趣这么做的平台上外,人们还会做出一些不可预测的事来。HotSpot的动态运行编译器会服务于其它语言的runtime吗?开发人员会通过修改编译器或者增添和删除功能构建多种不同版本的Java语言吗?这样的语言可能不能再叫Java了,但它叫什么呢?Java可能被用于某些特定域相关的语言, 使用"J"开头进行命名。

    2006:Sun制定并推广Java分销许可(Distro License for Java,DLJ)
  2007:Java分销许可还有用吗?
  如果你是一家Linux分销商,Sun现在无疑给了你当头一棒。在选定GPL前,Sun向Ubuntus和Debians推荐了Java分销许可,它使平台开发商能够以对它们的平台有意义的方式封装Java SE,使用户能够象apt-get那样获得JVM,而无需人工安装。

  有了GPL版Java,DLJ似乎就再无用武之地了,用户能够方便地修改类库、JVM。因此,只有在GPL Java被封装为.dpkg软件包时,DLJ才是必需的。

Java平台

   2006:Java SE 6发布
  2007:开发人员何时会采用它
  Java SE 6在12月中旬发布,比原定计划略微晚了一些。Java SE 6提供了包括XML Digital Signature在内的一些新API,更新了JDBC 4.0和JAXB 2.0等API,重新设计了图形渲染管道,提高了Swing的Windows的精度GTK。

  但是,由于开发人员、部署人员、用户在采用新版Java方面的动作比较缓慢,Java SE 6能够立即吸引人们吗?除非需要一些特定的新功能,安装全新的JVM值得吗?尽管性能有所提高━━特别是对于桌面应用软件而言,但在进入2007年时,SE 6不会成为许多人的缺省Java版本。


    2006:Java SE 6支持Java之外的其它语言
  2007:我们会在JVM上运行什么语言?
  Java SE 6中最有趣的变化是它内置地支持脚本语言。新的javax.script API使我们能够在Java中使用脚本语言引擎,在脚本语言和Java之间交换数据。Java SE 6提供了对JavaScript的内置支持,第三方厂商肯定会增添更多的脚本语言。

  由于Sun在9月份招聘了JRuby的开发人员,最可能的“下一种语言”是Ruby。很显然的是,Sun还在吸引Perl和PHP等其它脚本语言的开发人员。

  2006:JDK 7开发工作启动
  2007:与closures有关的争论达到顶峰
  JDK 7的开发已经在进行,但功能清单的发布还需要一段时间。JDK 7中最有争议的语言功能是在Java语言中增添closures。

  在这一问题上有二种观点。其一是closures是否有必要,或者说closures带来的复杂性是否超过了它带来的好处。考虑到closures提供的一些功能已经能够由inner类完成,closures能够减轻的“痛点”可能只不过是证明另一种语言结构是不必要的;第二种观点与closure的语法有关,即它对简洁的期望是否会使Java closures不容易理解。

  2006:Java EE 5发布
  2007:EJB 3能够重新赢得开发人员的青睐吗?
  Sun在今年夏季发布了Java EE 5以及EJB 3.0企业对象框架。

  2007年值得关注的是EJB 3.0能否重新赢得放弃了EJB 2.x的开发人员的青睐。

  2006:Java ME在手机上非常普及
  2007:GPL ME会改变什么吗?
  在三大Java平台中,Java ME最不引人注目,但由于被应用到了手机上,它的应用比SE或EE要广泛得多。尽管有了一个开放源代码CLDC/MIDP平台,是否有人采用它还是个问题。手机制造商可能会选用当前的许可协议,但GPL ME对于其它领域的初创厂商是非常理想的。



本页页面地址:

投票评分(记入本贴作者的专家分)

     非常好 还行 一般 扔鸡蛋          投票总得分: / 投票总人次:

用户评论列表

#1 评论作者: David_w_johnson 发表时间: 2006-12-30 08:57 上午

哎呀,感觉前景不明朗啊!Java要真是没了,以后如何谋生啊?

#2 评论作者: pytruth1002 发表时间: 2006-12-30 09:26 上午

杞人忧天,Java是有生命力的东西。SUN开放Java,是与时俱进。开源软件才是时代发展的潮流!

#3 评论作者: cleverpig 发表时间: 2006-12-30 09:27 上午

文中部分文字{...除此之外的一大问题是,在采用GPL后,人们会如何“处理”Java。除了与在一些版本的Linux中包含Sun的JVM所牵涉的“政治性”问题和将JVM移植到Sun没有兴趣这么做的平台上外,人们还会做出一些不可预测的事来。...}
--这段话好难懂啊。。闻起来好像“代码的坏味道”,饶舌的onjava作者是不是考虑把原文需要重构一下?
关于2007年,本人期待xml与web service技术的发展。而ME方面如果在硬件上没有新的进展,恐怕做出新的feature很难。

#4 评论作者: Amao 发表时间: 2006-12-30 09:33 上午

Java暂时还不会死掉,太多的应用基于Java了。不过Java最擅长的还是服务器端的应用。

#5 评论作者: latitude 发表时间: 2006-12-30 01:14 下午

支持java,尤其是移动应用前景广阔。

#6 评论作者: piaoling 发表时间: 2006-12-30 05:05 下午

支持JAVA,支持C
如果感觉前途不光明的话,那就再做C吧

#7 评论作者: teligen 发表时间: 2006-12-31 05:05 下午

C?好难学的,一想到指针就发昏@_@

#8 评论作者: beyond456 发表时间: 2007-01-03 08:16 下午

喜欢linux,喜欢java。

#9 评论作者: littlebat 发表时间: 2007-01-04 09:05 下午

看不出上文透露了Java没落的信息

#10 评论作者: Jimshenjian 发表时间: 2007-01-06 01:49 下午

哎,本人现在搞java开发,但是还不怎么会用linux,真是悲哀啊!有空好好学学了

#11 评论作者: Jimshenjian 发表时间: 2007-01-06 01:50 下午

这篇文章我想只是介绍了个大概,2006对于java肯定是具有历史性的一年

#12 评论作者: Daniel 发表时间: 2007-01-07 12:53 上午

Java是在不断进步中的,再加上很多语言本身就是用Java写的,比如Groovy,JRuby,Jython。。。所以Java的生命力极强,各位学习Java,热爱Java的朋友不必老是担心Java会在近10内没落,杞人忧天了:)

#13 评论作者: joson 发表时间: 2007-01-07 09:48 下午

起步艰难,但前景美好,顺应了历史潮流,sun做了正确的选择。另外,cleverpig果然敏捷聪明,与你有同感。

#14 评论作者: kyo100900 发表时间: 2007-01-15 09:14 上午

Java肯定死不了,大家不要担心了

#15 评论作者: andrewdu 发表时间: 2007-05-11 01:53 下午

比较赞同三楼,web services 是个趋势


发表我的评论 (评论可增加个人积分...)

用户*: E-mail:
评论内容*:

支持BBCode
算术题*: + =