《走近雲計算》閱讀筆記6--界面交互技術的比較--FLEX vs Ajax

 

Flex技術:http://baike.baidu.com/view/623340.htm

Ajax技術:http://baike.baidu.com/view/1641.htm

構建RIA的關鍵是:利用中間層避免傳統的頁面刷新。

        最常見的可以從中間層獲取數據的工具:JavaScript(Ajax技術)以及Flash Player的Flash(由Flex技術構建),其他包括SilverLighter技術,Java的JavaFx技術等。

1. Ajax技術

        基於JavaScript與XML技術的異步數據傳輸技術,主要包括用於顯示的XHTML和CSS技術,用於數據交換和控制的XML和XSLT,用於數據綁定的JavaScript技術。這些技術的組合改變了單個web頁面外觀和更新數據的方式,其不需要針對服務器的格外頁面請求。

        但是Ajax嚴重依賴於JavaScript語言影響到其執行效率,其安全性依賴於瀏覽器,同時JavaScript和XML相結合的方式是的組建擴展變得很麻煩,用戶的交互也受到瀏覽器的限制。

2.Flex技術與Ajax技術的比較

(1)安全性:獨立的沙箱模型機制;依賴於瀏覽器的安全模型

(2)移植性:運行在FlashPlayer上,與平臺無關;依賴於瀏覽器的兼容性

(3)效率:運行在AVM2虛擬機上,編譯成爲本地代碼使用Just InTime技術執行,效率高。使用矢量圖形技術,佔用內存少,佔CPU多;

                   瀏覽器解釋之星,在HTML和JavaScript間切換,實現效果依賴於位圖,佔用內存大,使用CPU少。

(4)擴展性:高;低

(5)代碼:使用面向對象的AS,代碼封裝擴展性強;使用JS代碼,代碼可讀性差

(6)用戶交互方式:事件驅動模型;事件驅動模型

(7)與服務器數據交互:使用HTTP模式,AMF數據格式進行交互;使用XML進行數據交互

3.Flex技術

(1)使用矢量圖形技術

(2)豐富的組件庫

(3)對多媒體的支持廣泛,提供了與其他流媒體服務器進行通信的功能,即時視頻會議,視頻聊天,在線錄製視頻等功能

(4)與服務器通信,可與JSP,PHP,ASP等主流服務器進行通信,連接遠程WebService,支持Remoting和Socket等的通信

(5)延遲實例化。Flex僅在用戶請求的情況下才能將部分應用程序實例化,縮短啓動時間

(6)全面支持AIR

(7)支持代碼重構

         Flex整體框架使用Flex編譯器將MXML編譯成SWF文件,然後由FlashPlayer執行該SWF,實現用戶的交互和數據管理。

4.Flex的工作過程        

 Flex程序是通過瀏覽器間接與服務器交互的,Flex程序被下載到瀏覽器中共,由瀏覽器插件FlashPlayer負責解釋執行,只要有與之相匹配的播放插件就能正常的運行Flex程序。Flex程序向服務器發出的請求信息實際上是調用瀏覽器的發送功能來實現的;接收服務器返回的數據也是調用瀏覽器來接收的。

(1)服務器->瀏覽器:下載Flex程序

(2)瀏覽器插件FlashPlayer解釋執行

(3)服務器<-瀏覽器:請求信息

(4)服務器響應請求,然後返回執行結果

(5)服務器->瀏覽器:返回執行結果

(6)瀏覽器的Flex程序異步接受執行結果

發佈了61 篇原創文章 · 獲贊 4 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章