Flex與Java編程語言的相似之處
本文和大家重點(diǎn)討論一下Flex與Java編程語言的相似之處,Adobe將Flex構(gòu)建在FlashPlayer之上,而FlashPlayer在呈現(xiàn)豐富UI方面是得到認(rèn)可的技術(shù)。
Flex與Java編程語言的相似之處
Adobe將Flex構(gòu)建在FlashPlayer之上,而FlashPlayer在呈現(xiàn)豐富UI方面是得到認(rèn)可的技術(shù)。FlashPlayer非常適合在圖形設(shè)計(jì)器中使用,簡化了視頻剪輯、時(shí)間線、橫標(biāo)廣告等的創(chuàng)建。不過,對(duì)于已經(jīng)習(xí)慣使用面向?qū)ο笤O(shè)計(jì)和組件(擴(kuò)展其他組件)開發(fā)應(yīng)用程序的企業(yè)開發(fā)人員而言,F(xiàn)lashPlayer應(yīng)用程序并沒有那么誘人。
◆另外,F(xiàn)lashPlayer的原生語言是ActionScript,這是一種遵從ECMA并且類似于JavaScript的腳本語言,而設(shè)計(jì)者傾向于使用基于XML標(biāo)記的語言。Adobe及時(shí)發(fā)現(xiàn)這兩者之間的缺口,并通過引入MXML將它們連接起來。Adobe處理Flex的方法類似于Sun?處理Servlets和JSP技術(shù)的方法。用MXML編寫的代碼被轉(zhuǎn)換成ActionScript代碼,后者接著被編譯成ActionByteCode(ABC)——這與編譯Java字節(jié)碼過程不同。ABC被用二進(jìn)制SWF格式進(jìn)行打包,并在用戶通過Web瀏覽器請(qǐng)求它時(shí)發(fā)送。這些基于SWF的文件可以在本地運(yùn)行,也可以在獨(dú)立的FlashPlayer插件中運(yùn)行。不過,F(xiàn)lashSecurity模塊不允許本地文件訪問網(wǎng)絡(luò)資源,反之亦然。
健壯的安全模型
這種安全性預(yù)防意味著通過網(wǎng)絡(luò)運(yùn)行的應(yīng)用程序不能訪問本地客戶機(jī)的文件系統(tǒng)——這個(gè)功能給JavaApplets帶來了許多惡評(píng)。就像JVM需要一個(gè)main方法一樣,F(xiàn)lex應(yīng)用程序需要一個(gè)擴(kuò)展mx.core.Application的組件作為入口點(diǎn)。就像Java應(yīng)用程序運(yùn)行在JVM中一樣,SWF文件最終運(yùn)行在一個(gè)稱為ActionScriptVirtualMachine(AVM)的虛擬機(jī)中。表1顯示了Java和Flex的虛擬機(jī)的相似性對(duì)比。
表1.Java和Flex的虛擬機(jī)的對(duì)比
【編輯推薦】
- 解析六大Flex優(yōu)勢(shì)
- 學(xué)習(xí)筆記 如何利用Flex調(diào)用JavaScript代碼
- 技術(shù)前沿 看Flex客戶端緩存技術(shù)如何使用
- 解析Flex全屏模式設(shè)置方法
- Flex內(nèi)存泄露解決方法和內(nèi)存釋放優(yōu)化原則