主流RIA技術和Flex關系揭秘
Flex技術是RIA開發技術中的一種,本文和大家分享一下Flex背景,Flex技術的優勢得天獨厚,有強大的Flash平臺作后盾。
RIA概述
本文內容介紹Flex背景和技術特點,并通過示例程式來展示Flex的界面效果和技術內涵。
Internet已經是我們生活的一部分,而“看webpage”可以說是網絡瀏覽者與Internet最簡單的溝通方式。打開瀏覽器,進入一個網絡瀏覽,這就是瀏覽者們看到的最直觀的Internet的外表。盡管頁面上不是單一的文字,但也僅僅是“頁”。然而如今這些傳統的呆板的“頁”已經不再能滿足網絡瀏覽者的要求了。多媒體、多元化的信息表現在一個頁面上,的確很是單薄。
另一方面,DEV人員也一直在為過分依賴于頁面刷新、請求響應等諸多傳統webpageDEV技術固有的問題而煩惱。當然我們不能忽略B/S架構能夠取代C/S長期大行其道有一個重要的因素,就是網絡帶寬問題。
◆傳統webpage內容簡單,節省網絡帶寬的優勢是與生俱來的,而如今網絡技術在不斷地發展,軟硬件發展又達到了一個并駕齊驅的時期,軟體Systam已經不需要等待硬件的發展而發展。有了強烈的需求,又有了充足的硬件基礎,新技術應運而生,RiChInternetAppliCation(RIA)的出現給網絡瀏覽者和DEV人員都帶來了全新的體驗。
RiChInternetAppliCation即是富因特網應用程式,其特點也體現在一個“富”字上,傳統的HTML頁面帶給用戶的頁面元素是極其有限的,輸入框、選擇框、下拉框等無法替換的元素,恐怕早就對瀏覽者帶來了審美疲勞,更何況在功能上也存在著很大不足。對比傳統頁面,RIA的界面是“富”的,基本上一個桌面程式能表現出來的效果,RIA都能表現。
圖1.1中的網絡是一個名為sCrapblog的博客網絡,與我們常見到的博客網絡不同,這個網絡使用一種RIA技術構建,在頁面表現力和交互性上都遠遠超過了常見的博客webpage。
圖1.1使用RIA技術呈現的網絡——sCrapblog(點擊上圖放大)
如果說RIA的優勢僅僅是豐富的界面表現能力的話,那么大家會認為這不過就是個C/S架構,RIA的另一大特點也正是與C/S架構最大的不同:Data上的“富”。傳統的webpageDEV基于HTTP規則,Data的交互依賴于請求/響應機制;界面的交互則需要進行頁面的跳轉和刷新。RIA的處理則有很大不同,在客戶端可以進行完整的Data處理,與用戶的交互更加友好、更加迅速;界面交互并不依賴頁面,消息通過異步請求傳遞,面向用戶界面中的各個小模塊,客戶端的模塊之間關系清晰,處理起來更加靈活。
◆對于企業級應用來說,RIA技術并不需要替換掉現有的體系結構模型,如java編程編程EE(以前稱J2EE環境)、ASP.NET架構等。RIA技術通??梢院推髽I級應用體系結構很好地進行整合。將原有的Systam構建成更易用、更直觀、更迅速的“webpage應用程式”。在不會影響到原有應用的前提下,RIA技術對表現層進行了大幅度的增強,進一步提升界面的友好程度,并且減少了用戶與Systam的遠程交互頻率,減少了帶寬需求。
RIADEV技術已經有很多種,Adobe公司的Flex發展日趨成熟,Microsoft公司的SilverLight及Sun公司的java編程編程FX也嶄露頭角。Flex技術的優勢得天獨厚,有強大的Flash平臺作后盾,SilverLight和java編程編程FX在RIA的呈現上則各有側重,SilverLight作為一個瀏覽器插件支持廣泛,而且對于java編程編程SCript和Microsoft的ASP.NET技術無縫結合,而java編程編程FX體系不僅希望利用編寫更容易的java編程編程FXSCript取代java編程編程SCript,更是提供了java編程編程FXMobile,為手機及移動設備增加了應用程式支持。
Flex簡介
Flex是一種基于標準編程模型的高效RIADEV產品集,最初由MaCromedia公司在2004年發布,后被Adobe公司冠以商標。Flex最大的特點是基于全球流行的網絡動畫平臺——MaCromediaFlash。2000年以來,Flash動畫愈發火爆,“閃客”們的作品為Internet增添了絢麗的色彩,而Flash的播放器FlashPlayer已經成為瀏覽器上首選的不可或缺的插件,為了看到頁面中生動的Flash動畫,大部分瀏覽者都會安裝FlashPlayer。通過Flex技術,DEV人員可以將RIA程式編譯成為Flash文檔,為FlashPlayer所接受,也就是說,Flex技術所DEV出來的程式對于大部分瀏覽者而言并不需要安裝額外的客戶端支持,這是一個得天獨厚的優勢。
“基于標準編程模型的高效RIADEV產品集”,這是Adobe公司對Flex技術的官方定義。下面我們就來進行詳細的分析。
一個完整的Flex程式由MXML編程codes和ACtionSCriptcodes組成。MXML編程基于XML編程標準,用于配置和設計Flex程式的界面及編寫表現層Data模型;ACtionSCript基于ECMASCript,原來用于設計Flash動畫,其語言規則規范類似于java編程編程SCript。這樣兩種基于W3C標準的DEVlanguage就構成了Flex程式,兩種language的關系類似于HTML和java編程編程SCript,這樣一來(尤其對于傳統webpageDEV者來說),Flex根本沒有什么門檻。
【編輯推薦】