使用框架构建富Internet应用程序

WebFX总统。Bill在互联网营销行业有超过25年的经验,专门从事SEO, UX,信息架构,营销自动化等。William在Shippensburg和MIT的科学计算和教育背景为cloudfx和WebFX的其他关键研究和开发项目的营销提供了基础。

使用框架构建富Internet应用程序

JavaScript库,ICEfaces, adobeflash4, Microsoft Silverlight,现在,随着万维网进入一个由富互联网应用(简称RIA)主导的新时代,HTML5一直在争夺网络霸主地位。

本文的目的是定义什么是RIA,解释为什么web一直在向RIA靠拢,探索目前存在的不同RIA框架,概述每种框架的优缺点,并讨论这些新技术在未来可能如何共存。

RIA是什么?

RIA,或富internet应用程序,是一种行为类似桌面应用程序的web应用程序。在ria出现之前,大多数web应用程序都是由静态页面组成的。

什么是RIA?Sumo Paint是一个基于flash的RIA,功能类似于Photoshop等图形编辑软件。

与桌面应用程序不同,与网页的任何交互通常都会导致重新加载一个全新的页面。另一方面,桌面应用程序具有更好的用户交互性,因为所有的处理都是在用户机器上本地完成的,从而产生了更无缝的用户体验。

因此,软件开发人员开始问自己:“我的产品应该是桌面应用程序还是web应用程序?”

这一直是一个公平的问题,因为这两种类型的应用程序都有很强的利弊。

桌面应用程序具有更平滑的用户交互性,但在软件发货时需要分发和处理软件更新。

另一方面,网络应用程序可以很容易地从网络上访问,使其免于与软件发布和更新相关的问题,但是非常缺乏用户交互。

那么,我们如何做到两全其美呢?

ria是两个世界的最佳选择。ria通过web分布,并且具有非常丰富的用户交互性。Ajax是一种web应用程序无需重新加载网页就可以用JavaScript发出服务器请求的方法,自Ajax出现以来,各种新技术纷纷涌现,加入RIA运动。

这些技术包括帮助开发人员构建和部署富互联网应用程序的框架,如JavaScript库,冰盖、Adobe Flash 4(前身为Flex 3)、Microsoft Silverlight和HTML5。

让我们逐一谈谈这些RIA框架。

JavaScript库用于Web应用程序开发

JavaScript库像jQueryMootools是第一个真正帮助部署Slick和Interactive Rich Web应用程序的技术之一。它们为RIA应用程序提供了一个框架,可利用客户端脚本来处理前端接口功能。它们基本上是JavaScript文件,包括用于使用Ajax进行事物的有用,交叉浏览器测试功能的集合,并根据用户驱动的事件处理彼此隐藏和显示内容的常见用户交互。

今天的一些最受欢迎的人是jQuery(特别是用jQuery UI),Mootools,Yui(雅虎!用户界面库)和EXTJS。所有这些库都包括RIA组件,如网格,图形和复杂的表单元素,以及处理Ajax的实用程序。最重要的是,最伟大的JavaScript库用于Web开发是开源的。

如果您不想支付综合开发环境(IDE),但仍然希望在您的网站上仍然想要伟大的专业RIA功能,请使用JavaScript库很好。

使用JavaScript库的站点包括谷歌、Digg、雅虎、亚马逊、微软、Twitter和百思买。

冰盖

冰面扩展了标准JavaServer Faces(JSF)框架,旨在通过从等式中删除JavaScript来简化程序员的工作流程。换句话说,ICEfaces通过Java api为你的web应用程序处理所有的JavaScript/Ajax。这极大地简化了创建富internet应用程序的任务,因为它消除了构建定制JavaScript函数所引入的一些复杂性。

如果你的团队主要由Java开发人员组成,如果你的web应用程序不需要其他复杂的组件,或者你的web应用程序需要,那么使用ICEfaces是很好的选择事件驱动.如果你的应用是事件驱动的,要确保你明白,ICEfaces并没有像HTML5、Flash Builder 4和Silverlight那样提供真正的“服务器推送”。相反,它使用a长轮询方法模拟服务器推送。

使用冰面的站点包括波音、美国宇航局、联合太平洋、T-Mobile和美国银行。

Adobe Flash Builder 4

Flash已经存在了很长时间,但是在闪存中建立整个Web应用程序的闪存,直到引入Flex的闪存,这是一个提供RIA Web组件的闪存的扩展。

是什么让Adobe Flash Builder 4如此令人兴奋的是它的跨平台和跨浏览器性质,允许它在所有操作系统和所有浏览器中运行完全相同的方式。将其与JavaScript进行比较,浏览器具有不同的浏览器JavaScript引擎该处理和处理代码,Adobe Flash有一个发动机,您的用户通过Adobe Flash浏览器插件安装(通常通常是)。

Flash Builder 4应用程序可以做到这一点,因为它们被嵌入到HTML页面中,这意味着浏览器本身对应用程序的性能没有影响。这意味着,如果你愿意,你甚至可以在IE6中正确运行最复杂的web应用程序(这当然是一个简化,因为Flash插件/引擎定期更新,所以它稍微取决于用户的插件版本)。

这些应用程序通常伴随着服务器端处理(如Java后端),需要Flash Builder 4 IDE为发展。

如果您的web应用程序需要复杂的图形,如果您的团队主要由Java开发人员组成(因为它与Java兼容良好),或者如果您的应用程序使用事件驱动架构,那么使用adobeflash Builder 4是很好的选择。

使用Flash的网站包括Mint.com、Flickr和Hyundai。

Silverlight

Silverlight基本上是Microsoft的Adobe Flex / Adob​​e Flash版本。它一直在牵引一些牵引力,但似乎在人气方面似乎没有赶上Adobe Flash。

Silverlight应用程序显然必须有一个。net后台,因为它是微软的产品。这意味着,尽管,你将有更紧密的Silverlight/。NET集成vs . Adobe Flex/[一些服务器端脚本语言,如PHP]。

如果你的web应用程序需要复杂的图形,如果你的团队主要由。net开发人员组成,或者你的应用程序使用事件驱动架构,那么Silverlight是一个不错的选择。

使用Silverlight的网站包括Netflix。

HTML5

HTML5是RIA运动的最新发展。从本质上讲,HTML5是将最好的HTML4、JavaScript、CSS、JavaScript库和Flash合并成一个利用API模型的单一规范的结果。HTML5是一项开放技术,这意味着不会有像Adobe的Flash或微软的Silverlight那样的单一管理机构。

因为HTML5规范还不完整,而IE9还没有发布新的IE9特性),你需要等待一段时间才能构建一个可生产的HTML5 web应用程序。

目前,除IE8外,所有主要浏览器都支持HTML5(Go图)。由于IE8具有浏览器市场的主要部分,因此HTML5实际上不会成为IE9发布之前的主流。

Once HTML5 becomes widely supported, it will be good to use if you don’t want to buy or learn an IDE (which you would need for frameworks like Flex and Silverlight), your application uses an event-driven architecture, or if you would rather use built-in HTML functionality and JavaScript APIs rather than using third-party JavaScript libraries for basic RIA functionalities.

尽管HTML5可以很好地处理图像,但使用Flash和Silverlight处理复杂的图像和动画仍然更容易/更快。

RIAs的未来

HTML5应用了互联网的未来?不完全。只要有创意和创新的网页开发者在那里创造一些特别的东西,总会有新技术能够提供HTML5或其他任何网页技术所不能提供的惊人的东西。

创造力和创新是JavaScript库,Icefaces,Flash,Silverlight和HTML5首先存在的原因。这网络的未来将由许多共存技术组成,就像今天一样。

相关内容