其他RIA解决方案
在这一部分,我们涉及到其他RIA技术,他们相对于Flex有什么缺点呢?
OpenLaszlo
OpenLaszlo(http://www.OpenLaszlo.org),它是Laszlo System的一项开源的WEB2.0框架,可以使应用编译为DHTML或Flash Players文件格式(在http://www.OpenLaszlo.org/legals网站上,你可以看下名为Legals的一个例子)。可以编译为DHTML代码使得这项技术成为移动设备上应用的最佳选择。近期Sun公司开始策划买进Laszlo System的这项技术以便用以移动设备上,比如手机。这对dobe
来说,是一个比较大的竞争对手。
在多媒体应用越来越广泛的应用中,Flash Player变得也重要起来,这样OpenLaslo就成为众多开发者选择的又一原因,与Flex和WPF一样,你可以以GUI的方式来选择编辑控件,实际上是一种基于XML格式的LZX语言,而逻辑处理可以用JavaScript来处理。
它的另一大亮点又在于:开源。Flex在Flash Player6.0上不能运行,它却可以。但发展迅速的Flash Player对于它支持旧版本不是一件好事,支持低版本不是一件突出的优点。
GWT
GWT是Google Web Toolkit的缩写(http://code.google.com/webtookit).它可以让你以JAVA来编程,并且可以自动转换成JavaScript,然后以AJAX方式来异步与服务器端交互。其实它并不是第一个做出JAVA语言转换成JavaScript的尝试,可以到这个网站去看看(http://j2s.soourceforge.net/)
,它是Eclipse的一个内嵌在js中的SWT插件。但是GWT的成功又一次阐明了商业的驱动是多么重要,其实它是为了AJAX有更好的普及性。GWT不是开源的,但却免费。
GWT有这样一个有趣的未来,由于最终是转化成了JS语言,所以就逃不掉跨浏览器的命运,你现在访问google的GWT网站就可以遇到这种尴尬的场境了,我经常遇到左下角提示有JS错误。回到其封装成UI库吧,还是需要不断的根据浏览器的特点扩展UI库吧,开发者又陷入了选择控件的泥沼。
Nexaweb
Nexaweb(http://www.Nexaweb.com)提供了以Java为语言基础的瘦客户端,客户不用任何额外的安装。应用其实就是一个运行在客户端的java applet。为了避免不同的浏览器对JDK的版本支持不一样,Nexaweb用JRE1.1来解决这种麻烦。它支持大多数的主流浏览器。同样页面的处理采用基于XML的一种语言,而逻辑则运用java来处理。Eclipse环境下支持该种语言的开发,就像支持JAVA语言一样。