RIA(Rich Internet Applications)丰富互联网程序,具有高度互动性、丰富用户体验以及功能强大的客户端。
简介编辑
RIA是Rich Internet Applications的缩写,翻译成中文为丰富的因特网应用程序(Macromedia中文网站翻译为Rich Internet应用程序)
传统网络程序的开发是基于页面的、服务器端数据传递的模式,把网络程序的表示层建立于HTML页面之上,而HTML是适合于文本的,传统的基于页面的系统已经渐渐不能满足网络浏览者的更高的、全方位的体验要求了,这就是被Macromedia公司称之为的“体验问题”("Experience Matters"),而丰富因特网应用程序(Rich Internet Applications,缩写为RIA)的出现也就是为了解决这个问题。RIA 是集桌面应用程序的最佳用户界面功能与Web应用程序的普遍采用和快速、低成本部署以及互动多媒体通信的实时快捷于一体的新一代网络应用程序。目前WEB领域和桌面软件领域正逐步向RIA靠拢,预计3、5年后RIA的时代将会完全到来。
优势编辑
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客户端开发技术:
RIA1) 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中运行。
RIA2) Laszlo
Laszlo 是一个开源的RIA开发环境。使用Laszlo平台时,开发者只需编写名为LZX的描述语言(其中整合了XML和Javascript),运行在J2EE 应用服务器上的Laszlo平台会将其编译成SWF格式的文件并传输给客户端展示。从这点上来说,Laszlo的本质和Flex是一样的。Flash是任何浏览器都支持的展示形式,从而一举解决了浏览器之间的移植问题。而且,在未来的计划中,Laszlo还可以将LZX编译成Java或.NET本地代码,从而大大提高运行效率。
RIA3) Java SWT
Java 已经出现几年了,并且完全支持创建基于窗体的用户界面。除了Java基础类(JFC/Swing)中的用户界面组件之外,开发人员还可以使用来自于 Eclipse Project的SWT工具箱和许多第三方工具箱进行开发。对于图形来说,可以采用Java 2D API:一个非常完整且非常复杂的图形API。你可以通过一个Web浏览器使用Java插件软件,或使用Java运行时环境中较新的Java Web Start技术来部署应用程序。使用Java建立Rich Client的主要缺陷是它的复杂性(即使对简单的窗体和图形也要求编写非常烦琐的代码)和Java浏览器插件的低市场占有率。
RIA4) XUL
XUL (念作"zool")是一种基于XML的用户界面语言,它来自于Mozilla的开放源码项目。它可用于建立窗体应用程序,这些应用程序不但可以在 Mozilla浏览器上运行,而且也可以运行在其他描述引擎上,如Zulu(一个FlashMX组件)和Thinleys(一个Java实现)。XUL描述引擎都非常小(100K以下),它可以使用XML数据也可以生成XML数据。XUL的一个主要缺点在于它目前还没有获得一个主要商业实体的支持。XUL最大的优点在于它与Gecko引擎的集成(打开了通向大量Web标准的大门),以及与大多数其它XML用户界面描述语言相比它是一种非常具有表达力和简洁的语言。
RIA5) Bindows
Bindow 是用Javascript和DHTML开发的Web窗体框架。Javascript用于客户端界面的显示和处理,XMLHTTP用于客户端与服务器的信息传输。Javascript在客户端的表现力不容置疑,利用Javascript几乎可以实现Windows应用程序所能干的大部分事情,XMLHTTP 一直以来常被用于实现"无刷新"的Web页面,它和Javascript配合,可以完成数据从服务器和客户端的传输。Bindows的一个主要的缺点是它采用一次全部载入的方式来实现脚本库,在窗口的加载期,需要一个漫长的等待过程,甚至浏览器的进程会产生无响应的情况。这点Bindows根本没有遵循"用多少去多少"的准则。另外,内部大量利用了IE6 的技术,没有考虑到非IE的浏览器,限制了Bindows的流行。
RIA6)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)。新工具将在来年夏天面市。
RIA7)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年在美国正式开始商业化,在美国和日本拥有重多的客户和合作伙伴,现已进军北美及韩国市场,发展势头迅猛。
RIA8)SilverLight
微软在Mix07上发布一些重大通告,其中最值得关注的就是SilverLight的发布,SilverLight的前身就是WPF/E技术,SilverLight就是微软新Windows图形子系统“Windows Presentation Foundation”(代号Avalon)的一个子集。
这是一种新的Web 呈现技术的名称,创建该技术的目的是使其能够在各种平台上运行。该技术支持创建丰富的、具有绚丽视觉效果的交互式体验,并且可以随处实现:无论是在浏览器内、在多个设备上还是在桌面操作系统(如 Apple Macintosh)中。可扩展应用程序标记语言(XAML) 遵循 Windows 演示基础 (WPF),前者是”WPF/E”呈现功能的基础。XAML 是Microsoft .NET Framework3.0(Windows 编程基础结构)中的呈现技术。
RIA9)ActiveX 插件
ActiveX 插件同样是微软推出的 RIA 解决方案,它是一个开放的解决方案,可以兼容多种语言,不过它的缺点也是显而易见的,用户需要调整浏览器的安全等级并下载插件才能运行 RIA 应用,极大地降低了安全性。
RIA10)HTML5
为推动 web 标准化运动的发展,W3C 推出了下一代 HTML 的标准 - HTML5,为众多的公司所支持,因此具有良好的前景。它有以下特点:首先,为增强用户体验,强化了 web 网页的表现性能;其次,为适应 RIA 应用的发展,追加了本地数据库等 web 应用的功能;再次,由于高度标准化以及诸多浏览器厂商的大力支持,它的兼容性和安全性非常高;最后它是一种简洁的语言,容易为广大开发者掌握。更为难得的是,由于节能和功耗低,在移动设备上 HTML5 将具有更大的优势。因此更适合如 Web 操作系统一类的 RIA 应用的前端开发。
RIA11) MUILIB
MUILIB是国内推出的第一款RIA技术解决方案,它通过传统的Win32 C++开发技术搭配XML构建的界面,达到客户端界面强大的用户视觉体验和人机交互性,由于采用的是C++技术,所以不管是功能上还是性能上对比其他语言的解决方案都有绝对的领先优势。
RIA应用领域
RIA目前在网页游戏方面应用很出色,国内开发比较早且有特色的网页游戏是由第七大道公司开发的弹弹堂。
RIA计算关系
与RIA相反的是日益强大的云计算,RIA是富客户端,把主要的计算都放在本地完成,仅用网络来传递少量的关键数据。而云计算把各种数据处理都放在服务器端,从而减轻客户端的压力。
RIA未来发展
就目前RIA的使用情况来说,离"RIA时代"还有很远的一段距离。今后几年时间内传统的Web应用程序和RIA将会共存。笔者认为真正具有实力担当起普及丰富客户端应用重任的只有基于Flash Player的Flash/Flex应用程序、Microsoft的基于Avalon的应用程序以及MUILIB的基于C++的DirectUI应用程序。短期时间内(估计2-3年时间)可能是 Flash/Flex应用程序在新兴的网络应用程序市场上占有主导地位,不过从技术的使用难度和学习曲线上来说,后面新出现的采用C++技术使用XML搭建界面的MUILIB快速开发平台将会成为一个快速兴起的新RIA平台,毕竟Flash/Flex的技术学习难度太高,非主流导致这方面的人才也较少,而MUILIB平台使用的是传统的C++和Win32开发技术,学习曲线较低,关键是参考资料也多,唯一需要掌握的就是XML搭建界面而已。
目前Microsoft还在推广一种叫做Smart Client(智能客户端)的客户端程序技术,Microsoft称Smart Client是比Rich Client更优秀的客户端,因而采用Smart Client的应用程序算不算RIA目前我个人还无法作答。这里我们之所以提及Smart Client,是因为Smart Client的特性跟我们谈的Rich Client有太多的相似之处。Smart Client拥有自动更新、离线状态下的数据处理和可以使用本地资源等特征,其中的可使用本地资源这一项无疑是一大卖点,因为浏览器中的 Flash/Flex应用程序目前还无法操作本地的一些资源,比如Flash/Flex应用程序无法将网上的文件保存到本地或者修改本地文件。虽然Macromedia的Central1.5已经可以对本地文件进行简单的操作,并且flex1.5开发的RIA也能够运行于Central上,但是如何使Central能够得到大范围推广还是个问题。相对于轻量级的Rich Client,Smart Client更接近C/S架构中的客户端程序。Rich Client和Smart Client的定位还是有所区别的:Rich Client更适合作为轻量级的基于浏览器的网络应用程序客户端;Smart Client更适合作为Windows桌面应用程序的智能客户端。
不管我们今天称之为的RIA今后会不会成为主流应用程序,人们对开发具有高度互动性、丰富用户体验以及功能强大的客户端的追求是不变的。有理由相信,拥有成熟技术和极高市场占有率的Flash客户端将会在RIA道路上越走越远。Microsoft未来的重量级武器:Avalon和Smart Client能否后来者居上让我们拭目以待。
RIA测定法
RIA概念解读
放射免疫测定/放射免疫分析(Radio immunoassay,RIA)
基本原理:
在放射免疫分析的实验中,加入超量的标记抗原*Ag与未标记抗原Ag(即:待测抗原)与较少量的抗体(Ab)竞争性结合。
如果实验结果所计量到的结合物(*Ag-Ab)放射活性较高,表示待测物的浓度较低。
如果所计量到的结合物放射活性较低,则表示待测物的浓度较高。 藉由标准 曲线图的分析,可以推算出待测物的浓度。
1960年,美国学者Yalow 和Berson 创立了放射免疫分析(Radioimmunoassay,RIA),并首先用于糖尿病人血浆中胰岛素含量的测定。这是医学和生物学领域中方法学的一项重大突破,开辟了医学检测史上的一个新纪元。它使得那些原先认为是无法测定的极微量而又具有重要生物学意义的物质得以精确定量,从而为进一步揭开生命奥秘打开了一条新的道路,使人们有可能在分子水平上重新认识某些生命现象的生化生理基础。其后30年中,内分泌科学的飞速进展,充分证明了这一超微量分析技术的巨大推动力。1977年,这项技术的发明者荣获诺贝尔生物医学奖。随后这一崭新的技术迅速渗透到医学科学的其它领域,如病毒学、药理学、血液学、免疫学、法医学、肿瘤学等,以及与医学生物学相关的学科,如农业科学、生态学及环境科学等。放射免疫分析的物质,由激素扩大到几乎一切生物活性物质。我们放射免疫分析研究起步于1962年,并迅速发展与普及,对我国生物医学的进展起着很大的促进作用。
RIA优缺点
(一)RIA的优点
放射免疫分析具有许多其它分析方法无可比拟的优点。它既具有免疫反应的高特异性,又具有放射性测量的高灵敏度,因此能精确测定各种具有免疫活性的极微量的物质。
1.灵敏度高一般化学分析法的检出极限为10~10g,而RIA通常为10(毫微克,ng)、10g(微微克,pg),甚至10g(毫微微克,fg)、10g(微微微克,ag)。
2.特异性强由于抗原—抗体免疫反应专一性强,所被测物一定是相应的抗原。良好的特异性抗体,能识别化学结构上非常相似的物质,甚至能识别立体异构体。
3.应用范围广据不完全统计,目前至少已有300多种生物活性物质已建立了RIA。它几乎能应用于所有激素的分析(包括多肽类和固醇类激素),还能用于各种蛋白质、肿瘤抗原、病毒抗原、细菌抗原、寄生虫抗原以及一些小分子物质(如环型核苷酸等)和药物(如地高辛、毛地黄甙等)的分析,应用范围还在不断扩展。近年来由于小分子半抗原制备抗体的技术有很大的发展,有人预测几乎所有的生物活性物质,只要其含量不低于RIA的探测极限,都可建立适当的RIA法。
4.操作简便RIA所需试剂品种不多,可制成配套试剂盒;加样程序简单一次能分析大量标本,标本用量也少;反应时间不长;测量和数据处理易于实现自动化;RIA属体外分析技术,对患者无任何辐射危害。
(二)RIA的缺点
1.只能以免疫反应测得具有免疫活性的物质,对具有生物活性百失去免疫活性的物质是测不出的。因此RIA结果与生物测定结果可能不一致。
2.由于使用了生物试剂,其稳定性受多种因素影响,需要有一整套质量控制措施来确保结果的可靠性。
3.灵敏度受方法本身工作原理的限制,对体内某些含量特别低的物质尚不能测定。
4.由于放射免疫分析是竞争性的反应,被测物和标准物都不能全部参与反应,测得的值是相对量而非绝对量。
5.存在放射线辐射和污染等问题。
尽管RIA存在以上缺点,但它毕竟是定量分析方法的先进技术。随着科学技术的进步,放射免疫分析技术将会得到更加广泛、更加深入的发展。