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