今日点击: 14
This page validates as XHTML 1.0, and will look much better in a browser that supports web standards, but it is accessible to any browser or Internet device. It was created using techniques detailed at glish.com/css/.
好久好久没有在这里写Blog了。今天重新开始吧,另外就是以后我的Blog大多数都会采用中文来记录。
开篇先来回忆一下今年的JavaONE感受吧。
今年是我第二年的JavaONE,不再有去年头一次参加的激动心情,最大的不同是今年拿到了Speaker Pass,除掉要做两个Lab的Proctor以外,四天从早上九点到晚上10点,几乎所有的时间都在听各种讲座。
相对于去年是Java EE 5.0和Java SE 6发布的大年,今年没有重量级的产品Release。今年的新鲜技术从我的理解上看大概有如下几点:Java FX Mobile/Script,Java TV session, Realtime Java的一些进展。
Java FX Mobile和Java FX Script完全是两个不相干的东西。Java FX Mobile是一个SmartPhone整个软件Stack的参考实现,具体包含了一个裁减过的Linux内核,一个不晚于Java SE 1.3的JVM和其它一些标准的应用程序。今年Sun做了一个不很起眼的并购:SavaJE。去年JavaONE上,SavaJE Phone风光无限,300多美元的纯Java Smart Phone在会场上即供不应求。而SavaJE就是一个智能手机上的Java SE实现(我最初以为是CDC实现,后证实不确)。去年声称的是操作系统也是拿Java写的,引起了我的兴趣,不过当时展台的工作人员没有一个人可以回答我如何用Java实现设备驱动的问题。不知什么原因,去年一年并没有带来想象中SavaJE手机的大红大紫,最终被Sun收购,作为Java FX Mobile解决方案的最主要部分。
Java FX Script是另外一种脚本语言,主要用来做界面相关的各种程序,目前为止,Java FX Script程序还只能够通过Java Web Start的方式部署,将来也许可以像Applet和Flash那样直接在网页上内嵌。Java FX Script底层是用Java代码(主要是Swing和Java2D)实现的。不似Swing采用的是Event/Listener机制,和较为严格的MVC,Java FX Script用更等级层次化的方式直观的组织界面,因而编程更为方便灵活。同时Java FX Script也将一些Java 2D的操作暴露出来,用户可以直接在控件中进行渲染。具体细节我会另外撰文详述。在Demo中,Chris Oliver将一些网站上很炫的Flash程序用Java FX改写成Swing的程序,很有点意思,也很有些深意。
Java TV是今年的一个新的Track,据说大概在10年前,就曾经有过这个Track,但是后来由于听众实在太少,就没有后续了,中断了很多年。今年重新开始,我只去听了它的Key Notes,有个细节很有意思,演讲者问底下观众有多少人是从事电视行业软件开发的,举手的只有五六个人,大多数听众都是跟我一样来看看热闹,试试水深的机会主义者。整体上讲,由于数字电视经过了多年的发展,到今天已经是大势所趋了,各家标准也基本上已经确定了,而中间件无一例外的(包括中国正在制定的数字电视标准)建立在Java技术基础之上。Sony带来了一个非常Cool的基于BlueRay的Demo,数字电视和BlueRay技术可以给用户带来更丰富的视听感受,通过Java带来的可移植性和丰富的编程接口,可以编制出更好的用户界面。似乎该是Java TV打翻身仗的时代了。
我没有去参加Realtime Java的任何Session,不过今年跟去年相比,有更多的内容,也有更多实际产品面世了。
除去上面讲的这些,整体而言,AJAX仍然是很大的热点,Ruby也风头正劲,而且由于Java SE 6中加入了脚本语言的集成,在Java程序员中,对于脚本语言的兴趣也大大提升。另外,我还参加了一些Swing和Java Trouble Shooting的讲座,尤其值得一提的是Extreme GUI Makeover, 挺有意思的,很生动,不过技术上讲,基本的方法也都跟去年大同小异,无外乎Timing Framework,Java 2D渲染,控件的定制。能不能写出有趣味的应用程序,关键还是在于富有创意的点子。另外,Java Trouble Shooting的BOF非常棒,新的Java SE 6中提供的诊断工具功能十分强大,很有帮助,以后我会另外撰文详述。今年最后一天的Key Notes还是James Gosling的Toy Show,有很多很有意思,很炫的Demo,机器人,飞机,令人眼花缭乱。大多是Java在嵌入式领域的应用。另外,今年一个有意思的看点是,居然有微软的展台,虽然场地不大。
总结一下技术发展趋势,最近似乎又轮回到Client端了,AJAX,脚本语言,Swing,JavaME这些都是客户端的技术。在Server端的技术基本趋于稳定以后,越来越多的重点被转向了如何提供更生动,更丰富的用户体验上,所谓Rich Client。