RIA技术白皮书
RIA技術(shù)白皮書
1.??????? HTML的局限和RIA的出現(xiàn)
互聯(lián)網(wǎng)已經(jīng)日益成為應(yīng)用程序開發(fā)的默認(rèn)平臺,傳統(tǒng)的Web應(yīng)用程序(Web Application)是基于HTML頁面、服務(wù)器端數(shù)據(jù)傳遞的模式。而HTML是適合于文本的,隨著Web應(yīng)用程序復(fù)雜性越來越高,傳統(tǒng)的Web應(yīng)用程序已經(jīng)漸漸不能滿足Web瀏覽者更高的、全方位的體驗(yàn)要求了,這就是所謂的"體驗(yàn)問題"("Experience Matters")。
此時一種被稱為Rich Internet Application(簡稱RIA,中文翻譯作"富客戶端的互聯(lián)網(wǎng)應(yīng)用程序")的具高度互動性和豐富用戶體驗(yàn)的網(wǎng)絡(luò)應(yīng)用程序出現(xiàn)了。這些應(yīng)用程序結(jié)合了桌面應(yīng)用程序的反應(yīng)快、交互性強(qiáng)的優(yōu)點(diǎn)與Web應(yīng)用程序的傳播范圍廣及容易傳播的特性。RIA簡化并改進(jìn)了Web應(yīng)用程序的用戶交互。這樣,用戶開發(fā)的應(yīng)用程序可以提供更豐富、更具有交互性和響應(yīng)性的用戶體驗(yàn)。
2.??????? C/S和B/S架構(gòu)
程序架構(gòu)經(jīng)歷了終端、C/S和B/S。
C/S架構(gòu)的交互能力強(qiáng),用戶體驗(yàn)好,缺點(diǎn)主要是部署、更新的問題。
B/S架構(gòu)的維護(hù)方便,缺點(diǎn)主要是受制于HTML的限制,無法像C/S那樣使用豐富的效果來展示數(shù)據(jù),用戶體驗(yàn)比較糟糕。另外,穩(wěn)定的客戶端/服務(wù)器連接,也是必要條件,網(wǎng)絡(luò)中斷將使B/S程序無法運(yùn)行。從C/S到B/S,這兩者受限于技術(shù)本身分別發(fā)展成了重客戶端和重服務(wù)器端的模式,而RIA的出現(xiàn)給我們帶來重新在客戶端和服務(wù)器端進(jìn)行更好的平衡的機(jī)會。
3.??????? RIA技術(shù)的優(yōu)點(diǎn)
RIA 是集桌面應(yīng)用程序的最佳用戶界面功能與Web應(yīng)用程序的普遍采用和快速、低成本布署以及互動多媒體通信的實(shí)時快捷于一體的新一代網(wǎng)絡(luò)應(yīng)用程序。RIA中的 Rich Client提供可承載已編譯客戶端應(yīng)用程序的運(yùn)行環(huán)境,客戶端應(yīng)用程序使用異步客戶/服務(wù)器架構(gòu)連接現(xiàn)有的后端應(yīng)用服務(wù)器,這是一種安全、可升級、具有良好適應(yīng)性的新的面向服務(wù)模型,這種模型由采用的Web服務(wù)所驅(qū)動。
RIA 具有的桌面應(yīng)用程序的特點(diǎn)包括:在消息確認(rèn)和格式編排方面提供互動用戶界面;在無刷新頁面之下提供快捷的界面響應(yīng)時間;提供通用的用戶界面特性的操作能力。RIA具有的Web應(yīng)用程序的特點(diǎn)包括如:立即布署、跨平臺、采用逐步下載來檢索內(nèi)容和數(shù)據(jù)以及可以充分利用被廣泛采納的互聯(lián)網(wǎng)標(biāo)準(zhǔn)。
客戶機(jī)在RIA中的作用不僅是展示頁面,它可以在幕后與用戶請求異步地進(jìn)行計算、傳送和檢索數(shù)據(jù),這一切都可以在不依靠客戶機(jī)連接的服務(wù)器或后端的情況下進(jìn)行。
對于企業(yè)來說,部署RIA的好處在于:
l??????? RIA可以繼續(xù)使用現(xiàn)有的應(yīng)用程序模型(包括J2EE和.NET),因而無需大規(guī)模替換現(xiàn)有的Web應(yīng)用程序。通過Rich Client技術(shù),可以輕松構(gòu)建更為直觀、易于使用、反應(yīng)更迅速并且可以脫機(jī)使用的應(yīng)用程序。
l??????? RIA可以幫助企業(yè)提供多元化的重要業(yè)務(wù)效益,包括產(chǎn)提高銷量、提高品牌忠誠度、延長網(wǎng)站逗留時間、較頻繁的重復(fù)訪問、減少帶寬成本、減少支持求助以及增強(qiáng)客戶關(guān)系等。
l??????? 具有B/S的部署維護(hù)簡單,同時具有C/S般豐富的客戶體驗(yàn)。
4.??????? 現(xiàn)有RIA產(chǎn)品
目前,RIA產(chǎn)品正在逐漸增多。下面列出一些有一定影響力的RIA開發(fā)技術(shù):
4.1???????? Namtso RIA Developer
目前唯一具有圖形化設(shè)計界面并且采用純JAVA的RIA開發(fā)工具,可以直接生成標(biāo)準(zhǔn)的WAR應(yīng)用程序包發(fā)布到各種應(yīng)用服務(wù)器。
Namtso(藍(lán)索) RIA Developer是一個先進(jìn)開放、安全可靠、擴(kuò)展性強(qiáng)的二次開發(fā)平臺,可以幫助你快速構(gòu)建基于WEB2.0技術(shù),擁有良好用戶體驗(yàn)的RIA J2EE應(yīng)用程序,并且極大的節(jié)約開發(fā)成本。
·???????? 采用AJAX等Web2.0技術(shù),極大提升了用戶的體驗(yàn);
·???????? 所見即所得,快速開發(fā);
·???????? 系統(tǒng)不采用難以記憶和理解的標(biāo)記庫、Java Bean等技術(shù),表現(xiàn)和業(yè)務(wù)邏輯徹底分離,使編程更加自然;
·???????? 服務(wù)端組件化開發(fā)技術(shù),使你能夠更加專注于業(yè)務(wù)邏輯的實(shí)現(xiàn),目前支持30多種常見的組件,并且可以方便的擴(kuò)展組件;
·???????? 徹底摒棄了難以調(diào)試,并且不能很好的同服務(wù)端通信的JavaScript技術(shù),采用服務(wù)器事件,所有事件都可以進(jìn)行跟蹤和調(diào)試,讓你開發(fā)更加便捷;
·???????? 開發(fā)人員容易上手,不需要任何的JSP/Structs/Spring等框架基礎(chǔ);
·???????? 采用目前主流的開放式技術(shù)和業(yè)界通用的標(biāo)準(zhǔn),和目前主流的數(shù)據(jù)庫平臺和主流的應(yīng)用服務(wù)器無縫集成,支持不依賴應(yīng)用服務(wù)器的連接池;
·???????? 系統(tǒng)可伸縮性好,易于擴(kuò)展,適合開發(fā)各種大型管理應(yīng)用系統(tǒng);
·???????? 開發(fā)出的系統(tǒng)界面美觀,可以支持各種以往通過復(fù)雜JavaScript實(shí)現(xiàn)的特效;
·???????? 類似于PowerBuilder的DataWindow設(shè)計,所有窗口都支持打印;
·???????? 支持各種復(fù)雜報表和圖表;
·???????? 用況驅(qū)動的全圖形化配置的開發(fā)平臺,類似于RAD工具的開發(fā)速度和C/S程序般的用戶體驗(yàn),開發(fā)出的產(chǎn)品系統(tǒng)穩(wěn)定,需求響應(yīng)速度快、維護(hù)簡單方便。
詳細(xì)信息,可以訪問Namtso主頁。
4.2???????? ?Adobe Flash/Flex
Flash在互聯(lián)網(wǎng)中的老資格了,UI展現(xiàn)能力較強(qiáng),還一直在與時俱進(jìn)。Flex是Adobe推出的創(chuàng)建并發(fā)布RIA的開發(fā)平臺,最終是要把程序發(fā)布成Flash,從而一舉解決了瀏覽器之間的移植問題。Flex使用MXML進(jìn)行布局,用它自己的類似Javascript的Actionscript語言控制邏輯,目前是Flex的版本是 2.0。此外,Adobe將要推出Apollo,能實(shí)現(xiàn)更高層次的RIA開發(fā)及運(yùn)行支持,值得期待。感覺Apollo正在做一些當(dāng)年Java承諾過卻沒有做到的事情,到底Apollo能不能做到,還需要時間去考驗(yàn)。
4.3???????? Laszlo
Laszlo 也是一個有多年歷史的開源的RIA開發(fā)環(huán)境了,它就顯得更實(shí)在一點(diǎn)。Laszlo平臺主要目的是在目前主流的一些技術(shù)的基礎(chǔ)上來實(shí)現(xiàn)RIA,它用的是名為LZX的描述語言,LZX整合了XML和Javascript,這樣很多程序員都可以用最小的代價去進(jìn)行RIA開放。Laszlo平臺運(yùn)行在J2EE 應(yīng)用服務(wù)器上,也是把程序發(fā)布成SWF格式的文件,從這點(diǎn)上來說,Laszlo的本質(zhì)和Flex是一樣的。Laszlo還打算將LZX編譯成Java或.NET本地代碼,從而提高效率,跨大覆蓋面。
4.4???????? Microsoft WPF/Expression
Microsoft的Windows Presentation Foundation(WPF)是Vista的一部分,是一個圖形和展示引擎,主要由新加到.NET框架中的一組類集合而成。Avalon使用的布局語言是"XAML"(可擴(kuò)展應(yīng)用程序標(biāo)記語言),用C#進(jìn)行編程。微軟去年年末推出了對應(yīng)的開發(fā)工具MS Expression Studio, 一度引起轟動。其實(shí)WPF和這與Flex及Laszlo都原理都是如出一轍,不過WPF的程序毫無疑問目前只能在MS的平臺上(嚴(yán)格說是只能在Vista上)運(yùn)行。
4.5???????? XUL
XUL擴(kuò)展用戶界面語言。UI基于XML布局的思想就是從它來的,它來自于Mozilla的開放源碼項(xiàng)目。XUL是對html的擴(kuò)展,完全兼容于html,當(dāng)然也就支持Javascript。XUL實(shí)現(xiàn)了完整、強(qiáng)大的圖形用戶界面設(shè)計功能,實(shí)際上mazilla整個就是基于XUL的。XUL到底怎么樣,有多大影響力,我沒有研究過,不敢妄言,好像國外還是比較認(rèn)可它的。
4.6???????? GWT
Google Web Toolkit (GWT) 是一個Java軟件開發(fā)框架用于開發(fā)類似于Google Maps和Gmail的AJAX應(yīng)用程序. 你可以用Java編程語言開發(fā)你的界面,然后用GWT編譯器將Java類轉(zhuǎn)換成適合瀏覽器執(zhí)行的JavaScript與HTML。
?
5.??????? RIA的發(fā)展
就目前RIA的使用情況來說,離“RIA時代”還有很遠(yuǎn)的一段距離,RIA產(chǎn)品統(tǒng)一的標(biāo)準(zhǔn)目前還沒有形成,各個公司將根據(jù)自己的實(shí)際情況,合理的選擇使用RIA產(chǎn)品。今后幾年時間內(nèi)傳統(tǒng)的Web應(yīng)用程序和RIA將會共存。
不管我們今天稱之為的RIA今后會不會成為主流應(yīng)用程序,客戶對開發(fā)具有高度互動性、豐富用戶體驗(yàn)以及功能強(qiáng)大的客戶端的追求是不變的。有理由相信,擁有成熟技術(shù)的Namtso 等RIA產(chǎn)品將會在RIA道路上越走越遠(yuǎn)。
?
?
總結(jié)
- 上一篇: 前端学习(1883)vue之电商管理系统
- 下一篇: css设置遮罩层(半透明)