主流RIA技术JavaFX、Flex和SilverLight、AJAX比较

开发 后端
过去的2008年是RIA技术竞争非常激烈的一年。果然不出所料,Adobe公司于年初发布了AIR1.0和Flex3.0;紧接着Microsoft也不甘示弱,于3月份发布了Silverlight2.0 Beta版;在5月份举行的2008 JavaOne大会上,JavaFX毫无悬念地成为本次JavaOne会议的焦点之一。本文将对他们进行一个简单的比较。

首先什么是RIA?

RIA是Rich Internet Application(富互联网应用系统,亦称富客户端)的缩写,我们翻开维基百科,先看看它的定义。所谓RIA,首先,它应该是一个网络应用程序;其次,它还要具有桌面应用程序的特征和功能 (Rich Internet applications (RIA) are web applications that have the features and functionality of traditional desktop applications)。简单地说,如果你的桌面程序(比如说Word、Photoshop和Eclipse)能在网络上运行,并且能保持其原来的功能和特征,那么我们就可以称它们为RIA应用(富客户端应用)。根据这个定义,我们能见到的RIA应用可以说很多很多,下面就列举一些常见的RIA应用。

1)Java Applet,Applet是相当古老的RIA应用,它能嵌入到HTML页面中,并在客户端运行。

2)Java Application,Java应用程序可以由Java Web Start通过网络发布到客户端,并在客户端运行。

3)JavaFX,JavaFX是Sun公司2007年发布的,准备替代Applet的一种技术或者平台,人们称它为“下一代Applet”,我想这包含两重含义,一是Sun承认它的Applet已经淘汰(Applet is dead);二是Sun公司想借重JavaFX重新争夺桌面市场。JavaFX包括JavaFX脚本语言和JavaFx Mobile应用,JavaFX脚本语言是Sun发明的一种声明性(declarative language)语言,其语法类似于SVG,用于快速开发图形用户界面。在这几天的JavaOne大会上,我看了来自Sun的工程师Richard Bair的一段视频,Richard演示了一个叫做IRIS的系统,该系统使用了基于Swing的Applet建成(a RIA swing applet),Richard籍此证明Applet并没有死(I am not dead)。如果您有兴趣,请访问 http://parleys.com/display/PARLEYS/IRIS%2C+a+RIA+swing+applet 观看他的演示。

4)JavaScript/Ajax,Ajax可以说是目前应用最广的RIA应用了,Web2.0概念就是因为Ajax而发展起来的。典型的Ajax应用当属 Google的Gmail和Google Map了。为了更好满足开发者的需要,目前已经涌现出许许多多开源的Ajax框架,另外,也有一些商业的Ajax框架供开发者选择。

5)Microsoft ActiveX控件,ActiveX控件可以嵌入至HTML页面内,它的历史和Applet一样古老,但是它是微软开发的技术,所以它只能运行在IE中。

6)Silverlight,微软已经看到了RIA市场的潜力,它当然不甘落后。Silverlight就是微软用来进军RIA市场的武器。 Silverlight从本质上说,是一种WPF应用程序,其界面使用XAML描述,后端可以用任何一种.Net兼容的语言开发。微软现在已经发布了 Sliverlight2.0 Beta SDK,开发者可以通过该SDK开发Silverlight应用。

7)Flash,Flash是Adobe公司发布的RIA技术,它可以通过Flex SDK来开发。目前,Flash在网络上的应用非常普遍。

当然,RIA应用还有很多很多,比如说Google的GWT框架、Curl及Backbase等等,在此就不一一赘述了。

【编辑推荐】

  1. JavaFX 1.2中的三大重要特性
  2. Silverlight、JavaFX、Flex技术比较
  3. JavaFX和Java之间的互操作性
  4. JavaFX对Java开发者到底意味着什么
  5. RIA之争 JavaFX是否能后来居上?
责任编辑:彭凡 来源: javaeye
相关推荐

2010-07-29 09:25:14

SilverLightAJAXJavaFX

2009-06-16 15:25:17

SilverlightJavaFXFlex

2010-08-11 10:10:17

JavaFXFlexSilverlight

2010-08-09 10:54:30

RIAFlex

2010-08-09 13:25:02

FlexSilverlight

2009-04-01 13:26:08

JavaFXFlexSilverlight

2010-07-29 09:18:25

JavaFXFlexSilverlight

2009-03-31 17:08:33

LinuxSUN RIAJavaFX

2009-06-22 13:37:00

RIA

2009-08-21 14:07:05

Flex与Silver

2009-06-11 08:19:58

SilverlightFlash微软

2009-01-13 17:02:05

RIAFlashSilverlight

2009-10-29 08:49:28

无线接入技术

2009-06-16 15:17:38

JavaFX

2009-07-02 09:19:13

Java+FlexRIA应用

2012-02-16 13:36:39

JavaJavaFX

2018-03-06 14:44:59

2009-05-31 08:42:03

RIAJavaFXFlash

2014-05-29 11:09:52

无线通信技术

2010-03-22 14:52:05

主流3G无线技术
点赞
收藏

51CTO技术栈公众号