Flex企業(yè)級(jí)開(kāi)發(fā)趨勢(shì)
本文和大家重點(diǎn)討論一下Flex企業(yè)級(jí)開(kāi)發(fā)的理念,首先讓我們來(lái)看一下Flex開(kāi)發(fā)環(huán)境,AdobeFlexBuilder仍然是使用最為廣泛的商業(yè)FlexIDE。它構(gòu)建在開(kāi)源的EclipseIDE平臺(tái)之上。除了Adobe的工具外,F(xiàn)lex開(kāi)發(fā)也已經(jīng)深入到了現(xiàn)有的各種IDE中。
Flex開(kāi)發(fā)環(huán)境
AdobeFlexBuilder仍然是使用最為廣泛的商業(yè)FlexIDE。它構(gòu)建在開(kāi)源的EclipseIDE平臺(tái)之上。在Flex4發(fā)布后,F(xiàn)lexBuilder即將更名為FlashBuilder。除此以外,AdobeFlashCatalyst目前還處在beta版,這是一款設(shè)計(jì)工具,旨在通過(guò)集成設(shè)計(jì)與編程以將Flash設(shè)計(jì)人員與Flex開(kāi)發(fā)人員聯(lián)系起來(lái)。
除了Adobe的工具外,F(xiàn)lex開(kāi)發(fā)也已經(jīng)深入到了現(xiàn)有的各種IDE中。IntelliJIDEA,這是一款大獲成功的JavaIDE,它已經(jīng)從v7開(kāi)始支持Flex開(kāi)發(fā)了。***的IntelliJIDEA9提供了更加全面的特性以支持Flex。
Amethyst是一款構(gòu)建于MicrosoftVisualStudio之上的FlexIDE。它向微軟平臺(tái)的開(kāi)發(fā)者們提供了熟悉的環(huán)境進(jìn)行Flex開(kāi)發(fā)。EnsembleTofinoforVisualStudio同樣是一款面向Windows開(kāi)發(fā)者的Flex開(kāi)發(fā)工具。
FlashDevelop是一個(gè)開(kāi)源的ActionScript2/3及Web開(kāi)發(fā)環(huán)境。它集成了AdobeFlashIDE、AdobeFlexSDK、MTASC(一個(gè)開(kāi)源的Flash)、haXe(一門開(kāi)源的編程語(yǔ)言,可以被編譯成swf)以及swfmill(一個(gè)支持XML到swf雙向轉(zhuǎn)換的處理器)。
Flex企業(yè)級(jí)開(kāi)發(fā)
Adobe在企業(yè)應(yīng)用系統(tǒng)開(kāi)發(fā)上投入了大量的人力物力。大多數(shù)企業(yè)系統(tǒng)都需要服務(wù)端開(kāi)發(fā)和集成,Adobe的開(kāi)源產(chǎn)品BlazeDS及商業(yè)產(chǎn)品LivecycleDS在這其中扮演著重要的角色。此外,F(xiàn)lex/ActionScript社區(qū)也開(kāi)發(fā)出了各種服務(wù)端集成工具以支持Flex企業(yè)級(jí)開(kāi)發(fā)。
PotomacframeworkforFlex用來(lái)開(kāi)發(fā)大規(guī)模的Flex應(yīng)用,它利用了模塊化方法而沒(méi)有使用Flex模塊框架。其靈感來(lái)源于OSGi,后者則被眾多的應(yīng)用服務(wù)器廠商使用以支持服務(wù)端的模塊化功能。
FluorineFx提供了一個(gè)Flex/FlashRemoting、FlexDataService以及實(shí)時(shí)消息功能的.NET框架實(shí)現(xiàn)。FxStruts則是一個(gè)開(kāi)源的程序庫(kù),提供了與Struts中的bean:write相同的功能,但其輸出格式為AMF或是XML。
X2O是面向AdobeFlex應(yīng)用的基于Web的數(shù)據(jù)建模平臺(tái)。它會(huì)生成一個(gè)遠(yuǎn)程托管框架,這樣開(kāi)發(fā)者只需編寫客戶端即可。SpringBlazeDSintegration是個(gè)Spring組件,用于簡(jiǎn)化以AdobeFlex作為前端的基于Spring的RIA開(kāi)發(fā)。
SpringActionScript以前叫做Pranaframework(上面提到過(guò)),GraniteDataServices是個(gè)免費(fèi)(基于LGPL)的組件,作用與AdobeLiveCycleDataServices一樣。Red5是個(gè)開(kāi)源的Flash服務(wù)器,使用Java編寫,AmFast是個(gè)面向Python的FlashRemoting框架,支持NetConnection與RemoteObjectRPC。
ExadelFlamingo可以將Flex、JavaFX、Swing、J2ME以及AndroidSDK粘合到Seam、Spring及JEE中。還有面向各種腳本語(yǔ)言的FlashRemoting支持:面向PHP5的PHPObject和SabreAMF、面向JEE的OpenAMF、面向Perl的AMF::Perl以及面向Python的AmFast。
展望未來(lái),F(xiàn)lexRIA開(kāi)發(fā)的下一領(lǐng)域?qū)⑹且苿?dòng)平臺(tái)。一系列事實(shí)表明即將發(fā)布的AdobeFlash10.1將能夠運(yùn)行在大量的智能設(shè)備上,比如將要發(fā)布的GoogleNexusOnephone將安會(huì)安裝Flash10.1。一旦Flash移動(dòng)技術(shù)橫空出世,F(xiàn)lex社區(qū)將會(huì)大舉進(jìn)軍移動(dòng)平臺(tái)。
【編輯推薦】