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

RIM--富客户端

 
阅读更多
RIA是Rich Internet Applications的缩写,翻译成中文为丰富的因特网应用程序(Macromedia中文网站翻译为Rich Internet应用程序)
  传统网络程序的开发是基于页面的、服务器端数据传递的模式,把网络程序的表示层建立于HTML页面之上,而HTML是适合于文本的,传统的基于页面的系统已经渐渐不能满足网络浏览者的更高的、全方位的体验要求了,这就是被Macromedia公司称之为的“体验问题”("Experience Matters"),而富因特网应用程序(Rich Internet Applications,缩写为RIA)的出现也就是为了解决这个问题。RIA 是集桌面应用程序的最佳用户界面功能与Web应用程序的普遍采用和快速、低成本布署以及互动多媒体通信的实时快捷于一体的新一代网络应用程序。目前WEB领域和桌面软件领域正逐步向RIA靠拢,预计3、5年后RIA的时代将会完全到来。

特点
  RIA最突出的特点为“Rich”,同时RIA最核心的部分也体现在“Rich”中。“Rich”包含了两层含义。丰富的数据模型:RIA技术提供了多种数据模型来处理客户端复杂的数据操作。使用RIA可以将部分原本需要在后台程序处理的问题转移到客户端,使数据能够被缓存在客户端,从而可以实现一个比基于HTML的响应速度更快,且数据往返于服务器的次数更少的用户界面。丰富的界面元素:RIA技术提供了比HTML更为丰富的界面表现元素,密集、响应速度快和图形丰富的页面元素与数据模型结合在一起,为用户提供好的使用体验。
  RIA 具有的桌面应用程序的特点包括:在消息确认和格式编排方面提供互动用户界面;在无刷新页面之下提供快捷的界面响应时间;提供通用的用户界面特性如拖放式(drag and drop)以及在线和离线操作能力。RIA具有的Web应用程序的特点包括如:立即部署、跨平台、采用逐步下载来检索内容和数据以及可以充分利用被广泛采纳的互联网标准。RIA具有通信的特点则包括实时互动的声音和图像。
  客户机在RIA中的作用不仅是展示页面,它可以在幕后与用户请求异步地进行计算、传送和检索数据、显示集成的用户界面和综合使用声音和图像,这一切都可以在不依靠客户机连接的服务器或后端的情况下进行。
部署RIA的好处
  对于企业来说,部署RIA的好处在于:
  1)RIA可以继续使用现有的应用程序模型(包括J2EE和.NET),因而无需大规模替换现有的Web应用程序。通过Rich Client技术,可以轻松构建更为直观、易于使用、反应更迅速并且可以脱机使用的应用程序。
  2)RIA可以帮助企业提供多元化的重要业务效益,包括提高销量、提高品牌忠诚度、延长网站逗留时间、较频繁的重复访问、减少带宽成本、减少支持求助以及增强客户关系等。
在过去的两到三年中,Web开发人员一直是想构建一种比传统HTML更丰富的客户端:这是一个用户接口,它比用HTML能实现的接口更加健壮、反应更加灵敏和更具有令人感兴趣的可视化特性。RIA技术的出现允许我们在因特网上以一种像使用Web一样简单的方式来部署富客户端程序。无论将来RIA是否能够如人们所猜测的那样完全代替HTML应用系统,对于那些采用C/S架构的胖客户端技术运行复杂应用系统的机构和采用基于B/S架构的瘦客户端技术部署Web应用系统地机构来说,RIA确实提供了一种廉价的选择。下面介绍一下目前出现的几种比较有实力或者有特点的RIA客户端开发技术:
1) Adobe Flash/Flex
  Flash 从6.0开始Flash就逐步具备建立窗体风格的应用程序的功能。据Adobe称已经有98%以上的桌面系统的浏览器都安装了 Adobe Flash Player。这使得以Adobe Flash Player为客户端的RIA可以支持种类广泛的平台和设备。
  Flex是为满足希望开发 RIA的企业级程序员的需求而推出的表示服务器和应用程序框架,它可以运行于J2EE和.NET平台。Flex表示服务器提供基于标准的、声明性的编程方法和流程,并提供运行时服务,用于开发和部署丰富客户端应用程序的表示层。Flex开发者使用直观的基于XML的MXML来定义丰富的用户界面。该语言由 Flex服务器翻译成SWF格式的客户端应用程序,在Flash Player中运行。
2) Laszlo
  Laszlo 是一个开源的RIA开发环境。使用Laszlo平台时,开发者只需编写名为LZX的描述语言(其中整合了XML和Javascript),运行在J2EE 应用服务器上的Laszlo平台会将其编译成SWF格式的文件并传输给客户端展示。从这点上来说,Laszlo的本质和Flex是一样的。Flash是任何浏览器都支持的展示形式,从而一举解决了浏览器之间的移植问题。而且,在未来的计划中,Laszlo还可以将LZX编译成Java或.NET本地代码,从而大大提高运行效率。
3) Avalon
  Microsoft的Avalon是下一版本的 Windows(代号"Longhorn")的一部分,是一个图形和展示引擎,主要由新加到.NET框架中的一组类集合而成。Avalon定义了一个在 Longhorn中使用的新标记语言,其代号为"XAML"(可扩展应用程序标记语言)。可以使用XAML来定义文本、图像和控件的布局,程序代码可以直接嵌入到XAML中,也可以将它保留在一个单独的文件内。这与Flex中的MXML或者Laszlo中的LZX非常相似。不同的是:基于 Avalon的应用程序必须运行在Longhorn环境中,而Flex和Laszlo是不依赖于平台的,仅仅需要装有Flash播放器的浏览器即可。
4) Java SWT
  Java 已经出现几年了,并且完全支持创建基于窗体的用户界面。除了Java基础类(JFC/Swing)中的用户界面组件之外,开发人员还可以使用来自于 Eclipse Project的SWT工具箱和许多第三方工具箱进行开发。对于图形来说,可以采用Java 2D API:一个非常完整且非常复杂的图形API。你可以通过一个Web浏览器使用Java插件软件,或使用Java运行时环境中较新的Java Web Start技术来部署应用程序。使用Java建立Rich Client的主要缺陷是它的复杂性(即使对简单的窗体和图形也要求编写非常烦琐的代码)和Java浏览器插件的低市场占有率。
5) XUL
  XUL (念作"zool")是一种基于XML的用户界面语言,它来自于Mozilla的开放源码项目。它可用于建立窗体应用程序,这些应用程序不但可以在 Mozilla浏览器上运行,而且也可以运行在其他描述引擎上,如Zulu(一个FlashMX组件)和Thinleys(一个Java实现)。XUL描述引擎都非常小(100K以下),它可以使用XML数据也可以生成XML数据。XUL的一个主要缺点在于它目前还没有获得一个主要商业实体的支持。XUL最大的优点在于它与Gecko引擎的集成(打开了通向大量Web标准的大门),以及与大多数其它XML用户界面描述语言相比它是一种非常具有表达力和简洁的语言。
6) Bindow
  Bindow 是用Javascript和DHTML开发的Web窗体框架。Javascript用于客户端界面的显示和处理,XMLHTTP用于客户端与服务器的信息传输。Javascript在客户端的表现力不容置疑,利用Javascript几乎可以实现Windows应用程序所能干的大部分事情,XMLHTTP 一直以来常被用于实现"无刷新"的Web页面,它和 Javascript配合,可以完成数据从服务器和客户端的传输。Bindows的一个主要的缺点是它采用一次全部载入的方式来实现脚本库,在窗口的加载期,需要一个漫长的等待过程,甚至浏览器的进程会产生无响应的情况。这点Bindows根本没有遵循"用多少去多少"的准则。另外,内部大量利用了IE6 的技术,没有考虑到非IE的浏览器,限制了Bindows的流行。
7)JavaFX
  2008年12月05日 Sun微系统公司今天正式发布了基于Java语言的平台JavaFX 1.0,这个平台建立在其广泛应用的Java编程语言的基础上,旨在建立大量可在电脑和手机上运行的网络程序。 Java一直以来就是编程语言,但是随着JavaFX的发布,Sun公司开始允许将编程内容创新这一任务转移到以设计艺术为重点而非编程科学为重点的设计人员身上。
  “我们的目标群体是叫做创造者的人群”,Sun公司Java平台组的高级副主任 OctavianTanase对 说,“随着1.0版的发布,我们将目标锁定在网页开发人员,这群可能拓展Java界面体验的人。到2011年,主要的目标是大量使用诸如Adobe系统等设计工具的设计人员”。
  当然,通向这个以设计为导向的工具还需要一些时间。Sun公司最后打算提供自己的程序给设计人员来建立RIAS,但是直到如今,这些设计人员还得使用程序员所使用的Netbeans或Eclipse集成开发环境(IDE)。新工具将在来年夏天面市。
8)Curl
  Curl诞生于1995年的美国,Curl是由美国国防部高级研究项目代理资助,马萨诸塞州科技学院的David A. Kranz开发的Web开发语言, HTML语言的创建者Tim Berners-Lee也参与其中,并扮演了重要的角色。
  该语言的目标是用一种统一的面向对象的语言代替HTML、Cascading Style Sheets、JavaScript等;仅使用Curl便可开发出Web应用的各种软件;Curl程序在浏览器中运行,并且因为它以类似JRE的形式提供了客户端运行环境Surge RTE,能够轻松开发出日益流行的Rich Client应用程序。
  Curl是为了实现富客户端(rich client)应运而生的Web开发语言, 仅仅从其外观的丰富性上就能体现其富客户端理念。
  为了实现真正有益的富客户端,它能有效地实现各种复杂处理,具备提供高信赖、高扩展性、高维护性的应用程序所应拥有的各种编码能力。其拥有在Web环境上便利的分配、管理以及低廉的维护费以及在C/S环境上的用户便利性、迅速的应答,华丽的图像显示等重多优点于一身。
  Curl语言于2002年在美国正式开始商业化,在美国和日本拥有重多的客户和合作伙伴,现已进军北美及韩国市场,发展势头迅猛。
9)SilverLight
  微软在Mix07上发布一些重大通告,其中最值得关注的就是SilverLight的发布,SilverLight的前身就是WPF/E技术。
  这是一种新的Web 呈现技术的名称,创建该技术的目的是使其能够在各种平台上运行。该技术支持创建丰富的、具有绚丽视觉效果的交互式体验,并且可以随处实现:无论是在浏览器内、在多个设备上还是在桌面操作系统(如 Apple Macintosh)中。可扩展应用程序标记语言 (XAML) 遵循 Windows 演示基础 (WPF),前者是”WPF/E”呈现功能的基础。XAML 是 Microsoft .NET Framework3.0(Windows 编程基础结构)中的呈现技术。
分享到:
评论

相关推荐

    rim-bmw:RIM-BMW 项目的 Rosinstall 结帐

    rim-宝马RIM-BMW 项目的 Rosinstall 结帐。安装程序您可以在安装 ROS Hydro 后和检查此 repo 之前运行此过程。 如果您还没有安装这些依赖项: sudo apt-get updatesudo apt-get install ros-hydro-urdfdom-py ros-...

    rim-bmw-experiments:RIM-BMW 项目的实验性演示代码

    "RIM-BMW 实验性演示代码"是一个专注于C++编程的项目,主要涉及的是RIM-BMW(可能是指RIM-BlackBerry BMW,一种假设性的技术或框架,实际信息未给出,此处为推测)的相关实验和演示。在这个项目中,开发者或研究者...

    rim 客服端服务端例子

    RIM使得开发者能够轻松地构建分布式应用,将服务拆分为客户端和服务端,提升系统的可扩展性和解耦性。 在这个"rim 客服端服务端例子"中,我们可以看到两个关键部分:客户端(rmiClient)和服务端(rmi)。以下是对...

    Numerical analysis of Flow-structure interactions with the gravity effect for Rim-generator turbines

    全贯流式水轮机是一种适用于低水头水力发电的涡轮机设计,其特点在于转轮直径大,轴向布置,以及与发电机转子一体化的水轮机转轮。由于这类水轮机的水头较低,且转轮的直径较大,因此在其转轮内的流动会受到重力的...

    RIM-MAC:一种适用于水下传感网接收者发起的多会话MAC协议

    为提高网络吞吐量,提出了一种接收者发起的多会话MAC协议(RIM-MAC)。它利用接收者发起会话,通过一次会话的4次握手完成所有邻居数据分组的传输,有效地减少握手次数。同时利用侦听到的本地信息(邻居延迟图和邻居...

    Pacifc-Rim-Game-43

    而“Pacifc-Rim-Game-43”很可能是基于这个IP开发的一款游戏,或者是一个游戏关卡、挑战或活动的代号。 在游戏设计中,通常会围绕电影的主题和设定展开,玩家可能会扮演Jaeger驾驶员,操控巨大的机器人与Kaiju进行...

    Tahoe-rim-trail

    Tahoe-rim-trail 等高线 从国家地图下载了4个文件: USGS_13_n39w120.tif USGS_13_n39w121.tif USGS_13_n40w120.tif USGS_13_n40w121.tif 将所有tif合并到一个主tif中(警告:非常大的文件,约2GB )。 使用的...

    黑莓OS5.0的net_rim_bb_browser_daemon,误删了可以用这个文件重新安装

    黑莓手机在导入sevicebook之类的操作会误删系统浏览器模块,这是OS5.0下浏览器模块的COD文件。

    Java基于Netty实现的高性能分布式IM即时通信系统源码+项目说明.tar

    | rim-client | 客户端:负责接入IM系统、应用层ACK | | rim-router | 路由层:负责消息(群聊、单聊、离线)转发、用户回话信息管理、应用层ACK | | rim-server | 服务层:消息推送 | | rim-store | 存储层:消息...

    Rim-of-the-Sky

    天空的边缘开发人员: 莱克斯特项目说明这个庞大的项目将带您进入在RPG Maker MV中重新创建的TES V世界。太雄心勃勃了吗? 太多了,但是谁不扮演硬派,那是一个弱点^ _ ^已经做了什么?你们真棒!...

    Web技术实现移动监测的介绍

    【Web技术实现移动监测】 移动监测,又称为运动检测,是一种广泛应用在无人值守监控和自动报警系统中的技术。它通过摄像头连续捕捉图像,并利用CPU对这些图像进行算法处理和比较,来判断画面是否存在变化,例如人...

    黑莓USB驱动

    **黑莓USB驱动详解** 黑莓手机作为一款曾经在商务领域广泛应用的智能手机,其独特的操作系统和功能设计赢得了众多用户的喜爱。然而,为了确保黑莓手机能够与个人电脑正常交互,如进行数据同步、充电或者软件更新,...

    Java RIM实例

    Java RIM(Research In Motion)实例是针对黑莓(BlackBerry)设备开发应用程序的一种技术。在Java平台上,RIM提供了一套开发工具和框架,使得开发者可以创建功能丰富的移动应用,这些应用能在黑莓手机上运行。这个...

    PlayTorrent:使用 ActionScript 编写的 BlackBerry PlayBook 的 Bit-Torrent 客户端-开源

    BlackBerry PlayBook,作为RIM(现为BlackBerry Limited)推出的平板电脑,虽然市场份额相对较小,但依然有一部分忠实用户。对于这些用户来说,能够在其设备上运行Bit-Torrent客户端是非常有用的。这就是...

    中国联通LTE&GSM;网络互操作理论描述-general

    –L到G方向:重定向流程(R9盲重定向,基于A2事件,即有RIM) -------无RIM环境,未测试 –L到G方向:重定向流程(R9重定向,基于B2事件,即有RIM) ----------当前eNB还暂不支持此功能 –L到G方向:CCO without ...

    2021-2022收藏资料反应注射成型技术在聚氨酯材料合成中的研究与应用.doc

    RIM-PU过程涉及高活性的异氰酸酯和多元醇在高压下碰撞混合,通过化学反应和物理变化形成最终制品。这种技术的优势在于其低温和低压的成型条件,节约能源,同时产物性能优良。 聚氨酯RIM的发展非常迅速,可以制造出...

    irim_fastMRI:i-RIM应用于fastMRI挑战数据

    用于快速核磁共振的i-RIM i-RIM的正式实施适用于,如, 。 可以在下找到预训练的模型。 在这里查看一些重构示例: 还有一些数字: 〜------ 4倍 ------〜 〜------ 8倍 ------〜 i-RIM单线圈 NMSE 信噪比 ...

    RIM项目采购生产管理-需求规格说明书.zip程序开发文档软件开发文技术档下载

    RIM项目采购生产管理-需求规格说明书.zip程序开发文档软件开发文技术档下载RIM项目采购生产管理-需求规格说明书.zip程序开发文档软件开发文技术档下载RIM项目采购生产管理-需求规格说明书.zip程序开发文档软件开发文...

    HL7v3 RIM 中文版

    **HL7v3 RIM 中文版** HL7(Health Level Seven)是一个国际性的标准组织,专注于制定医疗信息交换的标准,旨在促进不同医疗系统之间的数据互操作性。HL7v3(第三版)是该组织发布的一个关键版本,它基于RIM...

    一种适用于水下传感网的接收者发起的多会话MAC协议

    本篇研究论文中提出的是一种接收者发起的多会话MAC协议,简称为RIM-MAC协议,适用于水下传感网中。 首先,我们需要了解媒介访问控制(Media Access Control, MAC)的基本概念。MAC协议位于数据链路层,主要负责协调...

Global site tag (gtag.js) - Google Analytics