国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
富互聯(lián)網(wǎng)應用系統(tǒng)(RIA)一覽

富互聯(lián)網(wǎng)應用系統(tǒng)(RIA)一覽

作者:Cameron ORourke 來源:oracle http://www.csai.cn 2006年2月24日
  在過去的大約兩年中,人們的興趣一直是想構建一個"富客戶端":這是一個用戶接口,它比用HTML能實現(xiàn)的接口更加健壯、反應更加靈敏和更具有令人感興趣的可視化特性。RIA(Rich Internet Application,富互聯(lián)網(wǎng)應用系統(tǒng))技術允許我們在因特網(wǎng)上以一種象使用Web一樣簡單的方式來部署富客戶端程序。無論將來RIA是否能夠如人們所猜測的那樣完全代替HTML應用系統(tǒng),對于那些采用胖客戶端技術運行復雜應用系統(tǒng)的機構來說,RIA確實提供了一種廉價的選擇。

  在本專欄中,我將列舉一些當前的RIA產(chǎn)品和技術,并且提供一些如何開始應用這些產(chǎn)品和技術的啟示。在DevTrends站點和即將發(fā)行的近幾期Oracle Magazine雜志上,我將詳細探討使用Oracle平臺部署RIA的特定技術和策略。

  為什么用RIA?

  基于HTML的應用程序之所以變得流行是由于應用系統(tǒng)的部署成本低、結構簡單,且HTML易于學習和使用。很多用戶和開發(fā)人員都樂于放棄由桌面計算機帶來的用戶界面改進,來實現(xiàn)對新數(shù)據(jù)和應用系統(tǒng)的快速訪問。與喪失一些重要的UI功能相比,基于Web的方式所帶來的好處要更大得多。

  然而,某些應用系統(tǒng)并不完全適合采用HTML技術。復雜的應用系統(tǒng)可能要求多次提取網(wǎng)頁來完成一項事務處理,在某些領域中,如醫(yī)藥和財務領域,這往往導致交互速度低得無法接受。讓我考慮一個項目管理系統(tǒng):我們可以將其實現(xiàn)為一個HTML應用系統(tǒng),但是如果用戶可以看到并且操作圖表、進度表和各種層次結構,那么顯然會工作得更好。

  此外,雖然HTML開始走向簡單,但是即使簡單的交互活動也仍然需要用很多的腳本來完成。即使一個輸入窗體經(jīng)過仔細的布置和全面的腳本設計,它從瀏覽器所能發(fā)送的也僅僅是簡單的"名字/值"對。如果一個HTML窗體能夠以XML文檔形式發(fā)送和接收更復雜的數(shù)據(jù)結構,那就好多了。

  RIA利用相對健壯的客戶端描述引擎,這個引擎能夠提供內(nèi)容密集、響應速度快和圖形豐富的用戶界面。除了提供一個具有各種控件(滑標、日期選擇器、窗口、選項卡、微調控制器和標尺等)的界面之外,RIA一般還允許使用SVG(Scalable Vector Graphics,可伸縮向量圖)或其他技術來隨時構建圖形。一些RIA技術甚至能夠提供全活動的動畫來對數(shù)據(jù)變化作出響應。

  RIA的另一個好處在于,數(shù)據(jù)能夠被緩存在客戶端,從而可以實現(xiàn)一個比基于HTML的響應速度更快且數(shù)據(jù)往返于服務器的次數(shù)更少的用戶界面。對于無線設備和需要偶爾連接的設備來說,將來的趨勢肯定是向富客戶端的方向發(fā)展,并且會逐漸遠離基于文本的Web客戶端。那些運行在膝上設備上的應用系統(tǒng),可以被設計成以離線方式工作,或者至少當連接丟失的時候能基本上以離線的方式工作。

  圖1給出了一個典型的RIA體系結構。XML通常被用作數(shù)據(jù)傳輸?shù)母袷?,有時也被用來描述窗體的布局。在很多的實例中,客戶端可以保持與數(shù)據(jù)源的連接,這樣服務器能夠實時地對客戶端數(shù)據(jù)進行更新。對一個Oracle數(shù)據(jù)的訪問可以通過Web服務調用來完成。

  用于富客戶端的技術

  下面是一些可用的RIA技術:

  Java:一些相當復雜的客戶端應用程序(Oracle的JDeveloper,Eclipse)都是用Java編寫的,這說明可以用Java來建立幾乎任何一個能夠想象得到的富客戶端應用程序。到目前為止,Java已經(jīng)出現(xiàn)幾年了,并且完全支持創(chuàng)建基于窗體的用戶界面。除了Java基礎類(JFC/Swing)中的用戶界面組件之外,開發(fā)人員還可以使用來自于Eclipse Project的SWT工具箱和許多第三方工具箱進行開發(fā)。對于圖形來說,可以采用Java 2D API--一個非常完整且非常復雜的圖形API。

  Java還具有對XML和Web服務無人匹敵的支持能力。你可以通過一個Web瀏覽器使用Java插件軟件,或使用Java運行時環(huán)境中較新的Java Web Start技術來部署應用程序。使用Java建立富客戶端程序的主要缺陷是它的復雜性(即使對簡單的窗體和圖形也要求編寫非常煩瑣的代碼)。它的優(yōu)點在于Java對Web標準的全面支持,及該語言和類庫的深刻內(nèi)涵。

  XUL:XUL(念作"zool")是一個基于XML的用戶界面語言,它來自于Mozilla的開放源碼項目。它可用于建立窗體應用程序,這些應用程序不但可以在Mozilla瀏覽器上運行,而且也可以運行在其他描述引擎上,如Zulu(一個Flash MX組件)和Thinleys(一個Java實現(xiàn))。XUL描述引擎都非常?。?00K以下),它可以使用XML數(shù)據(jù)也可以生成XML數(shù)據(jù)。同Java的情況一樣,XUL也有一個非常大的用戶團體,這個團體有大量的開放源工具,如Theodore ThinletEditor(見“下一步”)——一個使你能夠以圖形化方式布局用戶界面,且可以生成相應XUL的Java應用程序。XUL的一個主要缺點在于它目前還沒有獲得一個主要商業(yè)實體的支持。XUL最大的優(yōu)點在于它與Gecko引擎的集成(打開了通向大量Web標準的大門),以及與大多數(shù)其他XML用戶界面描述語言相比它是一種非常具有表達力和簡潔的語言。

  Macromedia Flash和Flex:Flash是一個已經(jīng)成熟的商業(yè)產(chǎn)品,它可以在Web網(wǎng)頁中引入交互式的圖形界面。最近經(jīng)過升級后,新版本包含了建立窗體風格的應用程序的功能。盡管Flash作為一個在Web上最廣泛部署的前端技術還有爭議(取決于所選用的Flash Player版本),但據(jù)稱已經(jīng)有98%以上的桌面系統(tǒng)都支持Falsh。由于用來創(chuàng)建動畫式圖形的Flash工具其功能十分強大和是可視化的(與之相反其它技術要求進行低級的圖形編碼),所以圖形設計人員使用起來十分得心應手。Flah采用的腳本語言是ActionScript--ECMAScript 1.5的一個變種,該腳本語言又被稱為JavaScript。Flex產(chǎn)品對Flash增加了一個XML描述語言,使得可以編譯用戶界面,并且能夠用Flash Player來隨時進行描述。Flex使得傳統(tǒng)的開發(fā)機構能更好地了解和使用Flash。Flex和Flash的最大缺點在于對XML和Web服務等標準的支持很有限,而且作為應用開發(fā)工具的環(huán)境還不大成熟。Flex和Flash的優(yōu)點在于它可以很容易的用來創(chuàng)建復雜的動畫式顯示,以及可以使用第三方附件。

  Oracle Forms:Oracle Forms是用來構建以數(shù)據(jù)庫為中心的互聯(lián)網(wǎng)應用系統(tǒng)的一個成熟的商品化產(chǎn)品。通過Oracle Forms,你可以使用一個輸出窗體模塊文件的可視化設計器創(chuàng)建窗體。為了便于在該設計工具外部進一步進行處理,模塊文件要么采用私有的FMT格式,要么采用XML格式。這些模塊文件驅動一個描述窗體的Java運行時環(huán)境。除了所有窗體的標準窗口小部件之外,還可以通過集成附加的可插入的Java組件和一些定制的JavaBean來實現(xiàn)更多的功能性。Oracle Forms采用的腳本語言為PL/SQL,Oracle數(shù)據(jù)庫也采用同樣的腳本語言。Oracle Forms的一個非常有趣的特點就是,用來建立、編輯和編譯窗體模塊文件的Java API--開發(fā)人員可以通過創(chuàng)建腳本來生成眾多的窗體應用程序,或者進行全局性的改動。Oracle Forms的主要缺點是,進行Web部署需要獲得Oracle應用服務器的使用許可。它的優(yōu)點是,它可以與Oracle數(shù)據(jù)庫和Oracle平臺的其他部分(如Single Sign-On(單一登錄)和Enterprise Manager(企業(yè)管理器))緊密集成,對國際化的廣泛支持,以及創(chuàng)建以數(shù)據(jù)為中心應用程序的極高效率。

  開始選擇和使用RIA技術

  這里只討論了可用于創(chuàng)建RIA的技術中的一些有代表性的例子,還有很多其他的技術。當選擇一項RIA技術的時候,你需要權衡以下幾個因素:

  開放源產(chǎn)品與商品化產(chǎn)品進行對比;
  成熟的功能與最新的特性進行對比;
  輕量級的功能特性范圍與UI的豐富性進行對比;
  以媒體為中心的應用程序與以數(shù)據(jù)為中心的應用程序進行對比;

  無論你選用哪種技術,我都可以提供最好的創(chuàng)建RIA應用程序的實踐經(jīng)驗:

  在后臺線程獲取數(shù)據(jù)。對于一個富客戶應用程序所期望的性能是很高的,如果該應用程序在從一個Web服務收集數(shù)據(jù)的時候出現(xiàn)暫停,則將被看作是無反應的。

  保持客戶端與遠程數(shù)據(jù)的同步。由于不再經(jīng)常刷新頁面,所以如果有可能,將數(shù)據(jù)的變化以異步的方式推送到客戶端是非常重要的。

  雇傭一個圖形藝術家,或者至少一個好的UI設計人員。當然,伴隨著創(chuàng)建具有可視化的有趣功能的UI的能力,它也帶來了將事情搞混亂的機會。

本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
RIA門前的發(fā)展態(tài)勢
Ria介紹
什么是RIA
深入理解RIA(下)
oracle --構建富互聯(lián)網(wǎng)應用程序以監(jiān)控工作流和流程
將 75000 行原生 iOS 應用程序移植到 Flutter 后,結果太驚訝!
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服