常見AdobeFlex誤解剖析
本文和大家重點討論一下常見AdobeFlex誤解,在Qcon上,Adobe的JamesWard和InfoQ.com一起分享了他推廣傳播Flex應(yīng)用框架過程中所遇到的對AdobeFlex的幾個誤解,希望本文介紹對你的學(xué)習(xí)有所幫助。
常見AdobeFlex誤解
在Qcon上,Adobe的JamesWard和InfoQ.com一起分享了他推廣傳播Flex應(yīng)用框架過程中所遇到的對AdobeFlex的幾個誤解。
AdobeFlex誤解一:為了運行Flex應(yīng)用程序用戶需要安裝新東西
Ward向InfoQ.com獨家論述了Flash采用比例和Flex編程模型:
Flex2和Flex3必需運行在FlashPlayer9上。FlashPlayer9運行時目前已經(jīng)被安裝在世界94%的計算機上:http://www.adobe.com/products/player_census/flashplayer/version_penetration.html
Flex2和Flex3的應(yīng)用程序執(zhí)行在FlashPlayer9環(huán)境下。Flex應(yīng)用程序構(gòu)建在本地FlashPlayerAPI之上,如矢量圖形、位圖處理和網(wǎng)絡(luò)(基于瀏覽器網(wǎng)絡(luò)協(xié)議棧)。Flex框架增加了如日期選擇器、數(shù)據(jù)表格、圖表等可重用組件。編譯Flex應(yīng)用程序的結(jié)果產(chǎn)生一個SWF文件,它是供FlashPlayer使用的二進制字節(jié)碼格式。SWF文件包含的是Flex框架代碼和項目自定義代碼的字節(jié)碼。Flex編譯器對字節(jié)碼進行了優(yōu)化,只將要用的類編譯到SWF文件中。
對于桌面應(yīng)用軟件,Adobe的目標是推出自己名為AdobeAIR的新桌面運行時,希望能像Web運行時一樣普及。AdobeAIR1.0版本將于2008年初發(fā)布。目前,從labs.adobe.com上可得到的AIR是測試版。許多公司都已經(jīng)在使用AIR構(gòu)建產(chǎn)品軟件。eBay的應(yīng)用程序eBay桌面就是一個例子。
AdobeFlex誤解二:FlashPlayer是100%私有的
Ward繼續(xù)為InfoQ.com做出說明:
FlashPlayer的核心是Tamarin虛擬機,這是Mozilla旗下的一個開源項目。而SWF文件格式不是完全開放的,它是由osflash.org社區(qū)備案的。已有很多讀寫SWF文件的開源產(chǎn)品。FlashPlayer產(chǎn)品的發(fā)展方向在很大程度上受該社區(qū)及其需求所影響。FlashPlayer的核心語言是ECMAScript262的一個實現(xiàn),ECMAScript262是JavaScript的規(guī)范。Flex還將CSS用于組件/應(yīng)用的樣式。AdobeAIR使用web標準以及開源技術(shù)如Tamarin、Webkit和SQLite作為其桌面應(yīng)用的基礎(chǔ)。
AdobeFlex誤解三:Flash是為設(shè)計者、視頻準備的,而且讓人討厭
2007年7月Ward在博客文章“我是如何克服對Flash的恐懼”中指出:
毋庸置疑的,F(xiàn)lash的能力被濫用了。彈出窗口、跳過介紹和煩人的廣告橫行于我們的屏幕上。我曾聽人們說過不應(yīng)該因為一個宗教被濫用而否定它。這一格言同樣適用于技術(shù)。FLASH不能因為有些人拿它來做令人討厭的東西而遭到摒棄。畢竟e-mail并沒有因為垃圾郵件泛濫而消失。
Ward為InfoQ.com詳細闡述了該主題:
傳統(tǒng)的FLASH是用為設(shè)計者提供的基于時間軸的工具構(gòu)建的。Flex是用于構(gòu)建基于Flash的內(nèi)容/應(yīng)用的開發(fā)者工具套件。設(shè)計者和開發(fā)者通過共享兩個工具之間的資源能夠攜手合作。Flex增加了一個全面的組件庫:
http://www.adobe.com/go/flex_explorer_app
http://www.adobe.com/cfusion/exchange/index.cfm?event=productHome&exc=15&loc=en_us
AdobeFlex誤解四:Flex不是為企業(yè)/商業(yè)應(yīng)用準備的
在過去數(shù)周里,Ward發(fā)布了關(guān)于Oracle在AdobeFlex之上實現(xiàn)大量新應(yīng)用的七篇系列博客文章。這些應(yīng)用軟件近來公布在OracleOpenWorld上,其范圍涉及從銷售工具到數(shù)據(jù)庫管理和商業(yè)智能。
除了Oracle對Flex的使用,InfoQ.com也公布了一些使用Flex開發(fā)企業(yè)應(yīng)用的團體。Ward也為InfoQ.com指出了很多使用AdobeFlex開發(fā)企業(yè)級應(yīng)用的例子,包括:Workday,SAP,Salesforce和BusinessObjects。
AdobeFlex誤解五:Flex太貴
Ward詳述了Adobe所做的一系列努力來消除公眾對價格的誤解:
Flex是為構(gòu)建Web和桌面的豐富互聯(lián)網(wǎng)應(yīng)用所提供的、免費的開發(fā)工具包,并且馬上要開源。免費SDK包含了開發(fā)者構(gòu)建RIA應(yīng)用所需的一切,構(gòu)建出的RIA應(yīng)用可在任何瀏覽器或操作系統(tǒng)上同樣工作。免費FlexSDK的一部分部分是一套內(nèi)容廣泛的組件集,其可擴展、可更換皮膚且可訪問。你可以在Flex組件資源管理器上看到很多這樣的組件:http://www.adobe.com/devnet/flex/samples/code_explorer/
FlexBuilder是一個可選的Eclipse插件,這讓使用免費FlexSDK開發(fā)應(yīng)用軟件更高效。它包括如集成調(diào)試、設(shè)計視圖和代碼補全等功能。
最近也采取了不少辦法來調(diào)整FlexBuilder的價格。FlexBuilder現(xiàn)正免費提供給學(xué)生及教職人員。不帶圖表組件的vanilla版本FlexBuilder,其價格已降至249美元,以此更好地平衡FlexBuilder的價格等級。
還有許多構(gòu)建Flex應(yīng)用后端基礎(chǔ)結(jié)構(gòu)的可選項。為了利用高性能AMF數(shù)據(jù)傳輸協(xié)議,有如LiveCycle數(shù)據(jù)服務(wù)這樣的官方Adobe產(chǎn)品,以及如Granite數(shù)據(jù)服務(wù)這樣的眾多開源項目。使用AMF消除了以下不必要的步驟:從數(shù)據(jù)轉(zhuǎn)換為文本(SOAP,RESTful等),傳送,然后再由文本轉(zhuǎn)換回數(shù)據(jù)。AMF還允許在線傳送中保存類型信息。
關(guān)于AMF和其他基于文本序列化技術(shù)的比較,請看JamesWard的RIA基準應(yīng)用系統(tǒng)普查:http://www.jamesward.org/census.
【編輯推薦】
- AdobeFlex學(xué)習(xí)手冊
- 常用FlexBuilder快捷鍵用法指導(dǎo)
- 剖析學(xué)習(xí)AdobeFlex時常見十大誤區(qū)
- 技術(shù)前沿 Flex2.0 從零開始實現(xiàn)文件上傳
- AdobeFlexBuilder3七大新特性先睹為快