幾種RIA技術介紹
Rich Internet Application(富互聯網應用程序,簡稱RIA),一種全新的Web應用程式架構,它結合了桌面軟體良好的用戶體驗和web應用程式易部署的優點,很快就獲得了企業的青睞。近年來,各大開發平台供應商相繼推出新的技術來支援RIA的開發,從Ajax到SilverLight,從Apollo和AIR到Flex和Flash,從JavaFX到Laszlo,各種技術粉墨登台,以期成為大家關注的焦點。
然而,身為應用系統開發廠商,開發團隊與開發者,在RIA大潮中,選擇什麼樣的技術,讓自己更好地建構RIA系統,成為我們需要仔細考慮的問題。
AJAX
Ajax其實是用新的技巧把一些古老技術結合在一起使用,從而讓WebApplication使用者介面的互動性得到極大的提升。
在Ajax中,XMLHttpRequest是核心,是Ajax強大功能的來源,Ajax和傳統的Web介面技術區別也就在此。透過XMLHttpRequest,就把瀏覽器中的HTML(DHTML)和伺服器端的資料分離開。利用JavaScript來操縱客戶端存取伺服器取得數據,並修改HTML結構,以顯示資料。使用Ajax的經典例子就是Gmail和GoogleMaps了。
Flash/Flex/Laszlo
Flex是為滿足企業級應用而推出的應用程式架構。 Flex提供基於標準的、聲明性的程式設計方法和流程,用於開發和部署豐富客戶端應用程式的表示層。 Flex開發者使用直覺的、基於XML的MXML來定義豐富的使用者介面,利用ActionScript(一種物件導向的腳本語言)來編寫程式邏輯。
該語言由 Flex伺服器翻譯成SWF格式的客戶端應用程序,在FlashPlayer中運行。目前Flex已經發表了Flex 3.0 beta。
Laszlo是一個開源的RIA開發環境。使用Laszlo平台時,開發者只需編寫名為LZX的描述語言(其中整合了XML和JavaScript),運行在J2EE應用伺服器上的Laszlo平台會將其編譯成swf格式的檔案並傳輸給客戶端展示。在未來的計畫中,Laszlo還可以將LZX編譯成Java或.NET本機程式碼,從而大大提高運作效率。在最新發布的Laszlo4.0中,開發人員可以選擇Laszlo最終顯示為Flash還是DHTML。
Flex和Laszlo從運作位置來看,他們都屬於伺服器端技術,和大家熟悉的ASP,ASP.NET,JSP和PHP的運作機制類似。只是ASP等動態網頁技術,就是把介面元素解析為HTML傳送給客戶端的瀏覽器來展現;而Flex和Laszlo是把介面元素解析為二進位的swf文件,執行到瀏覽器中的FlashPlayer插件裡。
AIR
AIR之前稱為Apollo,Adobe官方的解釋為:是一個跨作業系統的運作環境,允許開發人員使用先前Web開發的技能來創建RichInternet Application,並部署到桌面上運行。整體來說,AIR就是Adobe把現有的技術,如:Flash、PDF、JavaScript、XML和ActionScript整合在一起,並提供一個客戶端運行環境,可以讓開發人員開發可以存取Internet資源的桌面程式。本質上,AIR就是讓Flash(或Ajax)脫離瀏覽器運行的一個桌面應用程式運行環境。
要開發AIR應用程序,也很簡單,有兩種技術可供選擇:一,使用HTML+JS技術;二,使用Flex+Flash。可使用的開發工具也就是開發上述技術的工具,如:flexbuilder、 flash IDE、eclipse、notepad 等等。
使用AIR來開發RIA的優缺點和Flex等類似,最大的好處就是:可以脫離瀏覽器成為一個獨立的桌面程式而運行,並且不受瀏覽器安全限制,可以有更多的權限存取本機資源。
目前,AIR還在測試階段,很多功能還不完善,相信等正式版發布後,會有更多功能值得我們期待。
WPF
一直以來,應用程式的使用者介面都可以用不同的技術開發,從MFC到VB,從WindowsForms到HTML+JS。對於開發人員來說,這就需要針對不同的應用程式類型,使用不同介面開發技術。隨著Flash等多媒體2D或3D介面的出現,選擇也越來越多。如果想使用一種技術就能開發各類應用程式的介面,這將是一個巨大的挑戰。
Windows Presentation Foundation(WPF),最初代號為“Avalon”,目前作為 .NET 3.0的一個元件發布,就是為解決這一難題而設計。
WPF為桌面用戶端和瀏覽器用戶端提供了通用基礎,大大簡化了二者的應用程式開發工作。 WPF採用更現代的方法,支援影片、動畫、2D或3D圖形以及各種類型的文檔,從而可以讓使用者以全新的方式處理資訊。此外,WPF也為桌面用戶端和瀏覽器用戶端提供了通用基礎,大大簡化了二者的應用程式開發工作。
作為微軟的下一代介面技術,WPF的最大特點就是把介面的佈局描述和介面邏輯程式碼分開。 WPF透過XAML(擴展應用程式標記語言,一種基於XML的語言,允許以聲明方式指定使用者介面,而非程式碼)把專業介面設計人員的工作和專業的程式開發人員的工作分開,讓他們更容易協作,以開發出介面炫麗,功能強大的應用程式。
同時微軟為不同的工作提供了不同的工具,針對介面設計人員,推出Expression Studio;針對程式開發人員,推出VisualStudio 2008(預計今年底發布RTM)。
透過提供更強大的圖形支援功能,WPF 使得一系列資料視覺化成為可能,而這依靠Windows Forms 或其他的早期技術是不可能實現的。 WPF 也提供了 XML Paper Specification(XPS) 的基礎,可定義檢視、散佈和列印固定格式文件的標準格式。
Silverlight
Silverlight原本的代號叫做“WPF/E”,意思是WPF run onEverywhere,它是WPF的子集。 Silverlight被社群稱為微軟出品的Flash Killer。
官方對其的定義是:「Silverlight是一個跨瀏覽器的、跨平台的插件,為網路帶來下一代基於.NET的媒體體驗和豐富的互動式應用程式」。 Silverlight提供靈活的程式設計模型,支援AJAX,VB, C#, Python, Ruby等語言,並整合到現有的WebApplication中,能夠存取其中的DOM資訊。內建多媒體技術的支持,可以以很低的成本播放媒體檔案。
目前,Silverlight發表了兩個版本, 1.0 beta和1.1alpha。可以運行於Windows和Mac平台下。同時Mono專案也在積極的開發Moonlight,一個在Linux下的Silverlight實作。
XUL
XUL是一種基於XML的使用者介面語言,它來自於Mozilla的開放原始碼專案。它可用於建立窗體應用程序,這些應用程式不僅可以在Mozilla瀏覽器上運行,而且也可以運行在其他描述引擎上,如Zulu(一個FlashMX組件)和Thinleys(一個Java實現)。 XUL描述引擎都非常小(100K以下),它可以使用XML資料也可以產生XML資料。 XUL的一個主要缺點在於它目前還沒有獲得一個主要商業實體的支援。 XUL最大的優點在於它與Gecko引擎的整合(打開了通往大量Web標準的大門),以及與大多數其它XML使用者介面描述語言相比,它是一種非常具有表達力和簡潔的語言。
目前XUL可以嵌入在Mozilla(或FireFox)瀏覽器中運行,也可以透過一個XULRunner的運行環境,脫離瀏覽器運行。
JavaFX
「JavaFX是一個建構在Java技術之上完整的運作環境,可以用來交付到桌面、行動裝置、手持設備和電視等環境的富互聯網應用(RIA)。 JavaFX是SUN進入RIA領域的開發技術,它包含JavaFXScript和JavaFX Mobile兩個部分,使用一種全新的腳本語言,依賴Java SE/ME運行時,利用Java2D和SwingAPI來實現在桌面或行動裝置上運行RIA應用。
三類RIA技術比較
#透過上述各種RIA開發技術介紹,我們可以看到它們各自的概念有所不同,運作的環境也不盡相同。整體說來,RIA開發技術分為三類:
1.瀏覽器類,整個RIA是運行於瀏覽器裡面,依靠傳統的HTML+CSS+JavaScript技術來實現介面的表現與控制。
2.瀏覽器插件類,RIA透過插件的方式運行於瀏覽器中。正在運作的程式是廠商特定的運作格式,需要特定的運作環境。
3.桌面類,RIA脫離瀏覽器直接運行於桌面之上。和常見的桌面程式很類似,但是可以存取Internet資源,並且具有部署容易,更新簡單的功能。
在三種分類的技術中,瀏覽器技術是成為開發RIA最直接的技術,這類技術適合一直在做網頁應用的軟體開發商。
新型桌面技術則完全另起爐灶,充分使用桌面開發的技術、技巧和理念,並結合WebApplication部署方便,即時安裝的優點。此類技術適合做Windows應用的開發商。
瀏覽器外掛程式則在瀏覽器技術和新型桌面之間進行了折衷,既使用新的技術來實現豐富的介面,又能和現有的Web技術進行部分的整合。
哪種RIA技術適合你
RIA是未來應用系統開發的重要方向,很多軟體開發企業,開發團隊和開發人員都希望在未來找到適合自己的技術,從而讓自己事半功倍,在提高開發效率,降低開發成本的同時,又能交付給客戶體驗豐富、功能完善的軟體系統。
雖然在上面我們介紹了各種技術及其優缺點,並對他們進行了一個歸類,但是要回答「我們該選擇那種」這個問題,還需要考慮下面的情況?
首先是我們自己的情況:
◆ 目前你的技術能力主要在Web開發方面還是Windows開發方面?
◆ 目前你開發的應用程式功能類型是內容展現為主還是交易處理為主?
◆ 目前主要在使用那個廠商或組織的技術? .NET 或者JAVA或其他Web技術?
◆ 目前是否在進行RIA或類似RIA的開發?
◆ 目前正在使用那種RIA開發技術?
其次是考慮技術的選擇標準:
◆ 學習成本,開發效率
◆ 對應用程式類型的適合性
◆◆ 執行環境部署成本
◆◆ 運作效率
◆ 完善的功能特性
◆ 技術授權成本與伺服器部署成本,開源、免費或收費
##◆ 官方和社群的技術支援◆ 完善的開發工具◆◆ 完善的UI元件◆ 跨平台特性最後,我們依照自己的具體情況和選擇技術的標準,可以為對這些技術進行一個定位和排序。 以技術運行環境部署成本來比較(由低到高):Ajax > Flex/Laszlo> Silverlight > XUL >WPF > AIR > JavaFX#以技術授權成本來看:開源的有:Ajax,Laszlo,XUL,JavaFX免費的有:Silverlight,WPF,AIR#收費的有:Flex從技術支援來看:無疑Silverlight和WPF會獲得最好的官方支持,Flex的官方技術也在改善,其他技術主要依靠社群的支持。 就開發工具來看:Silverlight和WPF可以有最強大的工具使用,Flex、AIR和Laszlo也有優秀的IDE可供使用,JavaFX的開發工具尚未明朗,Ajax要看具體的實現而定,XUL的開發工具進度緩慢。 就可以使用UI元件的情況來看:WPF和Silverlight需要自己擴充或使用第三方的;Flex、AIR和Laszlo都提供了豐富的UI元件,XUL自己有一套基本夠用的UI元件,JavaFX依賴JRE自備的UI工具箱。 對於跨平台特性和相容性我們也可以得到一個排序:Flex/Laszlo > Ajax> XUL > JavaFX > AIR> Silverlight > WPF #總而言之,要選擇適合自己的RIA開發技術,需要從各個方面來權衡。不僅要明確自己的狀況,考慮未來的需求,也要熟悉每種技術的差異和優缺點,這樣才能找到正確的技術。以上是幾種RIA技術介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

StableDiffusion3的论文终于来了!这个模型于两周前发布,采用了与Sora相同的DiT(DiffusionTransformer)架构,一经发布就引起了不小的轰动。与之前版本相比,StableDiffusion3生成的图质量有了显著提升,现在支持多主题提示,并且文字书写效果也得到了改善,不再出现乱码情况。StabilityAI指出,StableDiffusion3是一个系列模型,其参数量从800M到8B不等。这一参数范围意味着该模型可以在许多便携设备上直接运行,从而显著降低了使用AI

這篇論文探討了在自動駕駛中,從不同視角(如透視圖和鳥瞰圖)準確檢測物體的問題,特別是如何有效地從透視圖(PV)到鳥瞰圖(BEV)空間轉換特徵,這一轉換是透過視覺轉換(VT)模組實施的。現有的方法大致分為兩種策略:2D到3D和3D到2D轉換。 2D到3D的方法透過預測深度機率來提升密集的2D特徵,但深度預測的固有不確定性,尤其是在遠處區域,可能會引入不準確性。而3D到2D的方法通常使用3D查詢來採樣2D特徵,並透過Transformer學習3D和2D特徵之間對應關係的注意力權重,這增加了計算和部署的

軌跡預測在自動駕駛中承擔著重要的角色,自動駕駛軌跡預測是指透過分析車輛行駛過程中的各種數據,預測車輛未來的行駛軌跡。作為自動駕駛的核心模組,軌跡預測的品質對於下游的規劃控制至關重要。軌跡預測任務技術堆疊豐富,需熟悉自動駕駛動/靜態感知、高精地圖、車道線、神經網路架構(CNN&GNN&Transformer)技能等,入門難度很高!許多粉絲期望能夠盡快上手軌跡預測,少踩坑,今天就為大家盤點下軌跡預測常見的一些問題和入門學習方法!入門相關知識1.預習的論文有沒有切入順序? A:先看survey,p

很多用戶更新了最新的win11之後發現自己系統的聲音有了些許的變化,但是又不知道該怎麼去進行調整,所以今天本站就給你們帶來了電腦最新win11聲音調法介紹,操作不難而且選擇多樣,快來一起下載試試吧。電腦最新系統windows11聲音如何調1、先右鍵點選桌面右下角的聲音圖標,並選擇「播放設定」。 2、然後進入設定中點選播放列中的「揚聲器」。 3、隨後點選右下方的「屬性」。 4.點選屬性中的「增強」選項列。 5.此時如果「禁用所有聲音效果」前的√勾上了就把他取消。 6、之後就可以選擇下面的聲音效果來進行設定並點

23年9月國防科大、京東和北理工的論文「DeepModelFusion:ASurvey」。深度模型整合/合併是一種新興技術,它將多個深度學習模型的參數或預測合併為一個模型。它結合了不同模型的能力來彌補單一模型的偏差和錯誤,以獲得更好的性能。而大規模深度學習模型(例如LLM和基礎模型)上的深度模型整合面臨一些挑戰,包括高運算成本、高維度參數空間、不同異質模型之間的干擾等。本文將現有的深度模型融合方法分為四類:(1)“模式連接”,透過一條損失減少的路徑將權重空間中的解連接起來,以獲得更好的模型融合初

寫在前面&筆者的個人理解基於圖像的3D重建是一項具有挑戰性的任務,涉及從一組輸入圖像推斷目標或場景的3D形狀。基於學習的方法因其直接估計3D形狀的能力而受到關注。這篇綜述論文的重點是最先進的3D重建技術,包括產生新穎的、看不見的視野。概述了高斯飛濺方法的最新發展,包括輸入類型、模型結構、輸出表示和訓練策略。也討論了尚未解決的挑戰和未來的方向。鑑於該領域的快速進展以及增強3D重建方法的眾多機會,對演算法進行全面檢查似乎至關重要。因此,本研究對高斯散射的最新進展進行了全面的概述。 (大拇指往上滑

狗狗幣是一種基於網路迷因創建的加密貨幣,沒有固定的供應上限,交易時間快速,交易費用低,擁有龐大的迷因社群。用途包括小額交易、打賞和慈善捐贈。然而,其無限供應量、市場波動和作為笑話幣的地位也帶來風險和擔憂。什麼是狗狗幣?狗狗幣是一種基於網路迷因和笑話創建的加密貨幣。起源與歷史:2013年12月,兩位軟體工程師BillyMarkus和JacksonPalmer創立狗狗幣。靈感來自於當時流行的"Doge"模因,一個以一隻柴犬為特徵的滑稽照片加上破碎英語。特徵與優勢:無限供應量:與比特幣等其他加密貨

許多用戶在電腦上安裝了印表機驅動程序,但卻不知道如何找到它們。因此,今天我為大家帶來了詳細介紹印表機驅動程式在電腦中的位置,對於還不了解的用戶,快來看看吧印表機驅動在電腦哪裡找重新撰寫內容而不改變原義時,需要將語言改寫為中文,不需要出現原句首先,建議使用第三方軟體進行搜尋2、在右上角找到"工具箱"3、在下方找到並點選「裝置管理員」。改寫後的句子:3、在底部找到並點擊“裝置管理員”4、然後打開“列印佇列”,然後找到你的印表機裝置。此次是你的印表機名稱型號。 5.右鍵印表機設備,就能夠去更新或卸載我
