`
ihuashao
  • 浏览: 4722785 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

三种主流RIA技术之争,你该如何选型?

阅读更多

  前几天听说Adobe发布了用于Flash Player的RTMP(实时消息协议),在“这里”。乍一看,好像是一个不错的东东。号称有如下优点:支持高性能地把数据(主要是音频、视频)PUSH给Flash Player;支持over HTTP和HTTPS。再联想到最近1-2年,微软在Silverlight(详细介绍看“这里”)上也是频频出击。而Sun也不甘寂寞,搞出了一个JavaFX(2个月前刚发布,详细介绍见“这里”)。看来RIA领域的竞争有白热化的趋势。干脆今天就来八卦一下这三个技术。<!--program-think-->
  有同学可能会问了,为啥不顺便提一下AJAX捏?主要是因为AJAX和那三个玩意儿有很大的差别,不属于同一个维度,没有可比性(绝没有贬低AJAX的意思)。所以今天暂且抛开不谈(下次如果有空再聊AJAX)。

  ★先说说Flash/Flex
   Flash/Flex早先是由Macromedia搞出来的。Adobe目光独到,在05年把Macromedia吞并了。于是Flash/Flex就 成了Adobe的如意法宝。其实当初收购Macromedia的价格并不高,也就34亿美金。这个数字对微软来说是小意思,可惜当初微软真是瞎了眼,没有先下手。否则现在RIA市场的格局就是另外一番景象了。话说回来,Adobe买下Macromedia后,对Flash也是下了大本钱,再加上那几年没有直接的竞争对手。因此到了07年,Flash/Flex已经成为RIA市场的事实标准,当时的PC占有率少说也有70%。而且开始进入手机市场。
  目前Flash/Flex主要的优势一个是用户群大,还有一个是跨平台(包括操作系统、浏览器、移动设备)。
   不过我这2-3年用下来,感觉Flash/Flex也有不少问题。一个主要的问题是语言的兼容性不够好,当初从ActionScript2迁移到ActionScript3,团队里的人怨声载道(很多代码几乎要重写)。还有一个问题是功能不够强,让人感觉很不爽。比如至今不能够很好地支持多线程(仅支持异步回调);比如不能很好地整合PDF(照理说都是自家公司产品,整合应该不难)。

  ★再说说Silverlight
   估计是到了06年后,微软发觉苗头不对,赶紧下大力气自己搞。在07年底和08年底分别发布了Silverlight 1.0和Silverlight2.0(3.0据说09年也有望推出)。然后商务层面也接连出手:先是08奥运期间与NBC(美国国家广播公司)合作,用Silverlight进行赛事直播;接着在上个月美国总统就职典礼,也用上了Silverlight。微软的意图非常明显,就是市场方面利用各种机会争夺用户占有率,弥补对Flash的劣势;技术方面不断强化功能,力图甩开Flex,吸引开发人员加入。
  要说Silverlight的优点,我觉得依托于dotNET是主要优势。借着dotNET这个靠山,Silverlight能整合现有的某些语言(据说已能支持JScript、IronPythonIronRuby、VB)和库;还能够方便原有的dotNET程序员上手。Silverlight在功能上也显得比Flex更强大(比如多线程和3D方面)。
  不过依托于dotNET也导致了Silverlight的主要缺点:跨平台不够好。虽说现在有Moonlight的帮忙,但依然不够理想(尤其是对Linux的支持)。

  ★最后顺便提一下JavaFX
  坦白讲,JavaFX实在是乏善可陈。Sun的一个主要失策就在于后知后觉,跟进太慢。微软下手已经慢了,结果Sun比它还慢。而Sun在财力上又比微软差了很多(Sun现在自身难保,根本没法像微软那样烧钱搞推广),做IDE也不如微软拿手。真是天时、地利、人和皆无。难怪连Java社区对它也热情不高(有Java大牛Bruce Eckel的文章“Does Anyone Really Care About Desktop Java?”为证)。

  ★结论
  假如你要开发一个Web系统,打算从上述三种RIA技术中挑选一个。那么你先要评估一下你的Web应用对跨平台的需求如何?如果你需要同时支持各种各样的客户端操作系统和浏览器,那我建议你选择Flex(我的部门现在面临的就是这种情况);反之,如果你铁定只要支持Windows,那我建议你选择Silverlight。至于说JavaFX,短期内就先不要考虑啦。

http://program-think.blogspot.com/2009/02/ria-review-flash-silverlight-javafx.html

分享到:
评论

相关推荐

    RIA技术RIA技术RIA技术

    ria技术,全称为Rich Internet Applications,是互联网应用领域的一个重要概念,旨在提供更丰富、更具交互性的用户体验。ria技术的核心目标是将桌面应用程序的高级功能和动态性与Web应用程序的便捷部署和跨平台特性...

    项目技术架构选型方案报告

    该项目旨在通过合理的技术选型来提升系统的性能与稳定性,确保在面对大量数据及高并发情况下的良好表现。 #### 整体系统描述 整体系统采用B/S架构,通过多层架构的设计来实现高效的业务处理和服务。系统主要分为...

    RIA及技术与用户体验

    **RIA(Rich Internet Applications)**是指富互联网应用程序,它代表了一种互联网应用的新模式,旨在提供与桌面应用程序相媲美的用户体验。RIA 不依赖于特定的技术或编程语言,而是强调通过高度交互性和丰富的图形...

    RIA技术大全以及未来趋势

    RIA 具有的桌面应用程序的特点包括:在消息确认和格式编排...在无刷新页面之下提供快捷的界面响应时间;提供通用的用户界面特性如拖放式(drag and drop)以及在线和离线操作能力。RIA具有的Web应用程序的特点包括如:

    RIA.zip_ria技术

    什么是RIA 技术? RIA:Rich Internet Application ,富网络应用,最近比较火热。我和一个做视频会议的朋友联系,问他在关注什么,告诉我在关注RIA。那么什么叫RIA富网络应用呢?

    RIA技术实战

    JavaScript是RIA技术的核心之一,它是一种解释型的、跨平台的脚本语言,主要用于网页和网络应用的开发。在RIA中,JavaScript用于实现动态页面更新、用户交互以及数据验证等功能。理解JavaScript的基础语法,如变量、...

    RIA.压缩包

    RIA,全称Rich Internet Application,中文可译为“富互联网应用程序”,是一种在互联网上提供高度交互性和丰富用户体验的应用程序模型。这种技术结合了桌面应用程序的交互性和网页应用程序的分布性,旨在提供比传统...

    SAP 2008 技术大会 RIA与RCA 演讲稿

    - **定义**:RIA是一种利用Web技术和客户端技术相结合的方式,提供接近桌面应用程序功能的Web应用程序。 - **主要技术**: - **Microsoft Silverlight**:一种跨浏览器、跨平台的技术框架,用于创建丰富的用户界面...

    精通SILVERLIGHT:RIA开发技术详解.part1(共2)

    silverlight开发经典书籍,RIA开发技术,WPF开发者也可参考。

    RiaServices.msi

    **ria服务介绍** RiaServices.msi 是一个与微软Silverlight技术相关的安装程序包,它在2009年11月18日发布。...尽管现在可能不再是主流选择,但对于了解Web应用的历史和技术演进,Ria Services仍具有学习价值。

    Flex_4.0_RIA开发详解.pdf

    Flex 4.0是Adobe公司推出的一套富互联网应用(RIA)开发解决方案,它允许开发者构建强大的交互式web应用程序。Flex使用MXML(一种基于XML的标记语言)和ActionScript(基于ECMAScript的编程语言)作为开发语言,具有...

    RIA服务

    ria服务,全称为Rich Internet Application Services,是一种技术框架,旨在为Web应用程序提供更丰富的用户体验和更高的交互性。RIA服务是微软.NET平台上的一个重要组成部分,它结合了Silverlight技术和WCF(Windows...

    RIA应用开发课程简介

    本课程专为对RIA技术感兴趣的开发者设计,通过12个精心策划的课时,将引领你深入探索这一技术的精髓。 **jQuery学习课程** jQuery作为JavaScript库,极大地简化了DOM操作、事件处理和动画效果的创建。在RIA应用中...

    RIA架构网络教学评价系统设计

    RIA技术是一种融合了桌面应用程序的用户体验和Web应用的部署灵活性的新一代网络应用程序开发方式。它利用Flash、Ajax等技术,可以在浏览器端渲染动态内容,实现流畅的数据流和交互体验,极大地提升了用户的满意度。...

    RIA发展概况与Flex技术解析

    ### RIA发展概况与Flex技术解析 #### RIA概述与发展历程 Rich Internet Applications(RIA,富互联网应用)是一种网络应用程序的开发模式,旨在提供接近本地应用程序的用户体验,突破了传统Web应用的限制,如静态...

    RIA应用展示

    RIA应用结合了客户端和服务端的技术,旨在提高用户体验,减少网络延迟,提供更高效、更动态的交互。 在“RIA应用展示”这个主题中,我们可以深入探讨以下知识点: 1. **富互联网应用的优势**:RIA的核心优势在于其...

Global site tag (gtag.js) - Google Analytics