Posted on 2007-09-29 15:09
Jaunt 閱讀(248)
評論(0) 編輯 收藏 所屬分類:
Adobe Flex
如果你是一個IT人士,Adobe Flash你一定不會陌生,在Real、Windows Media和Quicktime的眾多競爭重重圍攻下,終于殺出了一條血路,成為當前在網頁內嵌入視頻的第一選擇,近期,Adobe 也正在考慮在其產品線中增添通過Web實現的
服務。全速進軍客戶端應用開發市場,它能
成功翻版Flash在Web中的成功么?
上個月,Adobe公司的Ben Forsaith演示了一個Flex 2的開發工具FlexBuilder,顯示了其新的基于Eclipse的集成開發環境,意味著Flex在開發領域市場邁出了堅實的一步。
揭開Flex的面紗?
Adobe Flex 是為滿足希望開發 Rich Internet 應用程序的企業級程序員的需求而推出的表示服務器和應用程序框架。RIA 將桌面軟件的響應速度和豐富功能與 Web 應用程序的廣度結合在一起,以提供效果更好的最終用戶體驗。Flex 表示服務器提供基于標準的、聲明性的編程方法和流程,并提供運行時服務,用于開發和部署豐富客戶端應用程序的表示層。
Flex 開發者使用直觀的基于 XML 的語言來定義豐富的用戶界面;該語言由 Flex 服務器翻譯成智能的客戶端應用程序,在普遍存在的 Flash 運行環境中。
從本質上來說,Flex只是編譯Flash的另一種方式,不過Flex是以代碼為中心,使用結構化查詢語言XML和腳步語言ActionScript
來編譯,對開發者來說,這種方式要比在面向設計的Flash集成開發環境更加容易掌握。它具有圖形化控制功能的可視化設計器,同時它又是一個有效的應用程
序開發工具;當然,與那些比較成熟的開發工具比起來,例如微軟的Visual Studio,還是有不足之處。
不過,這些缺點還不足以說明什么,Flash視頻的成功很大程度上得益于它易于部署的特點。只需要在你的計算機上安裝最新版的Flash播放器就一切
OK了。同樣,Flex也是如此。ActionScript
3.0改進了JavaScript腳本語言,開發者使用它不僅僅可以來編寫腳本而且還可以對主要的新功能進行即時編譯強壯它類型選擇。
ActionScipt的強類型不僅僅是花架子,可以被編譯器來創建更有效的字節代碼。很明顯,這種方式可以大大提高客戶端程序的運行速度。
Ajax的成功已經證明,運行在客戶端的互聯網應用程序,如果具備平滑的功能和豐富的用戶體驗,是十分受用戶歡迎的,因此編寫JavaScipt腳本語言即使承受一點煩惱,也是值得的。同時在你的AJAX應用程序和Flex應用程序中的代碼可有效進行融合互通。
上述特點對從事開發的編程人員不是很陌生,例如,Java的Applets,微軟的ActiveX和其他瀏覽器插件,都是同樣的運行原理。在瀏覽器中
運行的Java應用程序功能雖然強大,但是,與Flash相比,Java運行環境非常龐大,而且存在令人困惑的不同版本問題,這阻擋了它被廣泛采用的步
伐。而微軟的AcitveX則既不跨平臺又不跨瀏覽器,且開發的時候還要對相關的安全問題保持足夠的警惕性。
一個更類似的例子當屬微軟的展示層技術WPF,它看上去已經解決了基于瀏覽器的.NET應用程序的安全問題,而且非常容易部署。不幸的是,WPF需要一個非常大的運行環境,且只工作在微軟最近發布的強大的Vista操作系統中。盡管WPF可以提供相當豐富強大的圖形和多媒體效果,但是它相對狹窄的應用范圍限制了廣泛發展的可能性。微軟同時也有一個跨平臺的的WPF版本,即WPF/Everywhere,但是它目前依然處于開發階段。
此外,Adobe為開發人員構建下一代豐富互聯網應用提供了無限可能,其可用性和效率均大大提高。
包括波音(Boeing)、道瓊斯(Dow Jones)、三星(Samsung)、Indexes
和SAP在內的各行業領軍人物,紛紛使用Adobe Flex和Flash
Player來創建下一代Web應用,該應用將桌面軟件的優勢和網絡的廣泛范圍結合在一起,從而為用戶創造出更有價值的體驗。永明金融公司(Sun
Life Financial)軟件工程師Chris Culhane說:“利用Flex
2,我們已經改進了員工使用的程序界面的豐富程度和可用性,這直接提高了我們的工作效率。在開發方面,和其它開發環境相比我們的應用開發速度提高了一倍。
我們只需編寫很少的代碼,Flex應用程序可以將其與后臺系統無縫的集成在一起,因而最終的應用程序非常簡單,易于維護。”
Flex的未來之路
因此在這個領域,Adobe無疑具有比較大的領先優勢,但是在成績和榮譽的背后,Flex的未來之路并不是一帆風順的。
在接受CNET的采訪時Adobe掌門人布魯斯(Bruce Chizen)曾經說過“我不知道微軟是否會爭奪Adobe
的客戶,但它正在進入我們已經進入的領域,我不清楚這是一種直接攻擊呢,還是它的業務的一種副產品。通過PDF 和Flash
,與包括微軟在內的任何其它公司相比,我們與最終用戶有更多的接觸。
用于文檔交換的標準是PDF ,我認為微軟不喜歡PDF 成為標準,Flash 成為動畫標準。我認為微軟不喜歡人們使用Adobe 的解決方案創建文本和電子表格之外的信息。
如果你是微軟,就會試圖取代PDF ,XPS 就是微軟為此而進行的一次嘗試。微軟具有雄厚的財力和龐大的開發人員社區,它在桌面軟件領域具有壟斷優勢,因此我不敢輕視它的一舉一動。我們在全速前進,預計微軟會緊緊追隨我們。
從對Adobe公司掌門人的談話我們不難發現,微軟開始吞食Adobe的市場領域,Adobe公司要想通過Flex重現當年的神話傳說,必須闖過微軟的關口。
外因是一方面,Flex自身的缺點,也是沒有在RIA市場確立主力位置的原因之一,使用ActionScript腳步語言對Java和.NET開發者來說簡直是一種災難,因為他們將丟失原來平臺上功能的全面框架,此外,創建離線工作的應用程序對Flex是一個挑戰。
盡管Flash運行環境已經被廣泛部署,但是它不是通用的,尤其是在移動設備中,并且Flex 2要求Flash 9,不支持早期的版本。
隨著下一個版本的Adobe Creative
Suite以及一個被稱作Apollo的新產品的發布,Flex的一些缺陷將被解決。更新版的Creative Suite將意味著,Flash
集成開發環境像Flex一樣支持相同版本的播放器,這將使得開發者可以很輕松的集成Flash電影到Flex項目中。
Apollo將使調整后Flex更適合創建桌面應用程序,適全離線使用,提供對本地系統文件的訪問。另外,還將包含一個PDF整合功能。
但是,我預感到,Flex和Apollo將進一步分裂RIA應用程序的市場,能否重現WEB領域的輝煌,還得要未來實踐中得到印證。