Flex必須了解的那些事
本文和大家重點(diǎn)討論一下對(duì)于Flex最需要了解的一些知識(shí),F(xiàn)lex最近的新聞很多,很多開(kāi)發(fā)者聽(tīng)說(shuō)過(guò)Flex,并對(duì)之產(chǎn)生興趣,但是并不知道Flex到底是什么。SchalkNeethling總結(jié)了對(duì)于Flex最需要了解的10件事情。
對(duì)于Flex最需要了解的那些事
Flex最近的新聞很多,很多開(kāi)發(fā)者聽(tīng)說(shuō)過(guò)Flex,并對(duì)之產(chǎn)生興趣,但是并不知道Flex到底是什么。SchalkNeethling總結(jié)了對(duì)于Flex最需要了解的10件事情。
1。Flex是web標(biāo)準(zhǔn)
MXML是Flex應(yīng)用程序的標(biāo)準(zhǔn)語(yǔ)言,它允許開(kāi)發(fā)者定制的結(jié)構(gòu)應(yīng)用,不僅包括布局還包括class結(jié)構(gòu),非常簡(jiǎn)單用于標(biāo)記,這個(gè)特性非常方便有web設(shè)計(jì)和開(kāi)發(fā)背景的開(kāi)發(fā)者,用類似HTML的MXML開(kāi)發(fā)。同樣,F(xiàn)lex的ActionScript和JavaScript類似,F(xiàn)lex使用web標(biāo)準(zhǔn)的CSS控制布局。Flex應(yīng)用一條方便的途徑來(lái)定制應(yīng)用結(jié)構(gòu),類似樹(shù)結(jié)構(gòu)原型語(yǔ)言和容器組件模型應(yīng)用***結(jié)合。源代碼很容易發(fā)布,不是二進(jìn)制需要IDE的文件,而是簡(jiǎn)單可讀性很強(qiáng)的text文件。
值得一提的是MXML是ActionScript的一種速記,ECMA兼容腳本語(yǔ)言,MXML在編譯時(shí)轉(zhuǎn)換成ActionScript3。
2。Flex是Flash
如果你熟悉Flash過(guò)去所提供的輕量級(jí)矢量動(dòng)畫(huà)和先進(jìn)的用戶界面,那么你對(duì)Flex不會(huì)陌生。Flex建立在***FlashPlayer之上,引擎藏在所有Flash內(nèi)容后,從這方面來(lái)說(shuō),沒(méi)有什么是Flash能作而Flex不能作的。
3。FlexJustWorks
很多公司使用Flex替換Java,因?yàn)樘峁┖蚃ava類似的跨平臺(tái)能力和現(xiàn)代面向?qū)ο蟮募軜?gòu),但是只需要一個(gè)小得多的封裝和額外的負(fù)荷。Flex應(yīng)用完全能夠完成基于web的軟件,以及桌面軟件(結(jié)合AdobeAIR)。
4。Flex不受服務(wù)器限制
Flex由數(shù)據(jù)構(gòu)成,能夠接受不同格式的數(shù)據(jù)和最與最常見(jiàn)的服務(wù)器互動(dòng)。加載XML通過(guò)本地或者遠(yuǎn)程方式,JSP,PHP,ASP,ColdFusion等。你能通過(guò)HTTP或者SOAPwebservices下載信息,甚至能夠直接接受Java服務(wù)對(duì)象來(lái)讀寫SQLLite數(shù)據(jù)庫(kù)。
5。Flex外觀能夠被你任意定制
Flex應(yīng)用外觀的可定制化非常大,可以任意切換"皮膚"和定制UI。這一點(diǎn)不像Java或者JavaScript,并不是繼承所運(yùn)行的操作系統(tǒng)的UI,這意味著Flex運(yùn)行在MacOSX上,按鈕不會(huì)變成Mac風(fēng)格的按鈕,F(xiàn)lex由自己內(nèi)建的外觀所設(shè)置。
6。Flex是輕量和快速的
建立在ActionScript3上,F(xiàn)lex框架速度是非??斓?。初始化時(shí)間對(duì)于ActionScript2已經(jīng)大大改善。Flex采用新的JIT(Just-in-Time)編譯器,加快了運(yùn)行速度。當(dāng)然,有些人會(huì)辯稱,使用了一整套用戶界面組件一定會(huì)影響速度,事實(shí)上,一個(gè)典型的使用AJAX框架的應(yīng)用程序比類似的Flex應(yīng)用程序要大,F(xiàn)lashPlayer只有幾M字節(jié),而且往往預(yù)先安裝在電腦上。這也是值得一提的新功能,即框架緩存,能夠節(jié)省很多大一部分下載框架內(nèi)組成部分的時(shí)間。這個(gè)功能可以存儲(chǔ)標(biāo)準(zhǔn)的FlexUI組件在用戶的機(jī)器上,以便其他Flex應(yīng)用程序運(yùn)行時(shí)無(wú)需下載整個(gè)框架。
7。Flex是無(wú)障礙的
很多人認(rèn)為Flash內(nèi)容是很難進(jìn)入的,這是一個(gè)錯(cuò)覺(jué)。事實(shí)上,F(xiàn)lex框架組件擁有很好的互動(dòng),比如屏幕閱讀和鍵盤導(dǎo)航,開(kāi)發(fā)者只需要打開(kāi)這個(gè)開(kāi)關(guān)(缺省是關(guān)閉的)。
8。Flex兼容搜索引擎優(yōu)化
Flash內(nèi)容很難被搜索引擎收錄,這一直是作內(nèi)容的網(wǎng)站開(kāi)發(fā)的問(wèn)題。Adobe最近發(fā)布了針對(duì)搜索引擎優(yōu)化的FlashPlayer特殊版本。當(dāng)然這個(gè)問(wèn)題徹底解決需要時(shí)間。
9。Flex是免費(fèi)和開(kāi)源的
Flex完全是開(kāi)源的,整個(gè)框架源代碼都可以在Adobe網(wǎng)站下載。
10。Flex是易學(xué)的
MXML非常簡(jiǎn)單,容易理解。如果你曾經(jīng)使用過(guò)HTML和CSS,你很快就能上手MXML。
【編輯推薦】