中文字幕二区_国产精品免费在线观看_黄色网站观看_人人草人人澡_日本真实娇小xxxx

您的位置: 首頁 > 技術(shù)文檔 > 網(wǎng)頁制作 > 使用Apparat框架優(yōu)化Flash
JS語法檢查插件 jsLint for Vim 回到列表 一場關(guān)于YUI3/jQuery的精彩辯論
 使用Apparat框架優(yōu)化Flash

作者:正邪 時(shí)間: 2010-11-11 文檔類型:轉(zhuǎn)載 來自:口碑網(wǎng)UED Team

第 1 頁 使用Apparat框架優(yōu)化Flash [1]
第 2 頁 使用Apparat框架優(yōu)化Flash [2]

誕生背景

Adobe的Flash編譯器(ASC, ActionScript Compiler)表現(xiàn)得實(shí)在太“昨天”了,加上Flash虛擬機(jī)在性能上還有很大的提升空間,F(xiàn)lash很多時(shí)候被當(dāng)做玩具或者被戲稱為CPU hog。一般來說,我們很少會手去工優(yōu)化一個(gè)SWF,大多數(shù)情況下,它都能良好地運(yùn)行,但是當(dāng)一個(gè)SWF文件尺寸過大導(dǎo)致加載時(shí)間過長或者代碼執(zhí)行時(shí)間過長導(dǎo)致幀頻過低時(shí),我們就需要考慮對SWF進(jìn)行優(yōu)化了,例如代碼的精簡,靜態(tài)資源(圖片、視頻等)的壓縮。但是手動(dòng)優(yōu)化產(chǎn)生的性能提升很是有限,更多的優(yōu)化任務(wù)本應(yīng)該交給編譯器來完成的,值得感激的是,Apparat框架可以幫助我們從手動(dòng)優(yōu)化的噩夢中解脫出來,不僅如此,任何未經(jīng)過優(yōu)化的SWF都能從中得到優(yōu)化。Apparat的作者joa ebert在Flash性能優(yōu)化領(lǐng)域有深刻見解,今年的FlashAndTheCity大會上,joa的出色工作為他贏得了“2010年最天才的Flash開發(fā)者”和“2010年最杰出的貢獻(xiàn)者”兩項(xiàng)大獎(jiǎng)。

搭建環(huán)境

Apparat框架通過Scale寫成,在實(shí)踐它之前,需要先安裝Scala 2.8.0,Java 1.6,另外7-zip的安裝是可選的。搭建好這些基本的運(yùn)行環(huán)境后(需要加入到PATH環(huán)境變量中),從Google Code可下載最新的安裝包(目前是1.0RC8)。下載后解壓到新的文件夾,其中包含的文件有:

Apparat提供了很多命令行工具,比如tdsi, stripper, reducer等等,還有一些非常特殊的ActionScript API(存在于SWC文件中)。接下來我們來看看Apparat是如何為Flash提速的。

優(yōu)化字節(jié)碼

Apparat的核心功能是TAAS(Three Address ActionScript Compiler),TAAS不會改變?nèi)魏我恍蠥ctionScript,它僅是使用普通的優(yōu)化技術(shù)就能獲得可觀的性能提升。不同于Adobe的編譯器ASC,Apparat是對編譯過的SWF和SWC文件進(jìn)行分析,再組織和再裝配。

Flash虛擬機(jī)AVM中的字節(jié)碼是基于堆棧的,這種結(jié)構(gòu)難以再被優(yōu)化,Apparat把基于堆棧的字節(jié)碼先轉(zhuǎn)換成CFG(Control Flow Graph),然后再通過CFG轉(zhuǎn)換成無堆棧的TAC(Three Address Code)碼, 即TAAS(Three Address ActionScript)。

有了TAC/TAAS, 就可以根據(jù)編譯器優(yōu)化技術(shù)對Flash的字節(jié)碼進(jìn)行再度優(yōu)化了,例如inline expansion, copy propagation, constant folding, dead code elimination等等。

Apparat提供了幾個(gè)有用的SWC文件,它們擁有更加高效的API,甚至也包含了ActionScript還無法使用的Alchemy API。使用了這些API的SWF經(jīng)過Apparat處理之后,執(zhí)行效率要大大提升,其原理是Apparat對相應(yīng)的代碼做了內(nèi)聯(lián)(inline)優(yōu)化。優(yōu)化字節(jié)碼的命令格式是:

tdsi -i input.swf -o output.swf

出處:口碑網(wǎng)UED Team
責(zé)任編輯:bluehearts

上一頁 下一頁 使用Apparat框架優(yōu)化Flash [2]

◎進(jìn)入論壇網(wǎng)頁制作WEB標(biāo)準(zhǔn)化版塊參加討論,我還想發(fā)表評論。

相關(guān)文章 更多相關(guān)鏈接
Flash在多標(biāo)簽瀏覽器中的問題
Adobe Flash Player 10.1 發(fā)布
炮炮兵的 Flash 修煉術(shù)
HTML5拿什么取代Flash?
喬布斯:關(guān)于 Flash 的思考
作者文章
跨域資源共享的10種方式
關(guān)鍵字搜索 常規(guī)搜索 推薦文檔
熱門搜索:CSS Fireworks 設(shè)計(jì)比賽 網(wǎng)頁制作 web標(biāo)準(zhǔn) 用戶體驗(yàn) UE photoshop Dreamweaver Studio8 Flash 手繪 CG
站點(diǎn)最新 站點(diǎn)最新列表
周大!熬•自然”設(shè)計(jì)大賽開啟
國際體驗(yàn)設(shè)計(jì)大會7月將在京舉行
中國國防科技信息中心標(biāo)志征集
云計(jì)算如何讓安全問題可控
云計(jì)算是多數(shù)企業(yè)唯一擁抱互聯(lián)網(wǎng)的機(jī)會
阿里行云
云手機(jī)年終巨獻(xiàn),送禮標(biāo)配299起
阿里巴巴CTO王堅(jiān)的"云和互聯(lián)網(wǎng)觀"
1499元買真八核 云OS雙蛋大促
首屆COCO桌面手機(jī)主題設(shè)計(jì)大賽
欄目最新 欄目最新列表
淺談JavaScript編程語言的編碼規(guī)范
如何在illustrator中繪制臺歷
Ps簡單繪制一個(gè)可愛的鉛筆圖標(biāo)
數(shù)據(jù)同步算法研究
用ps作簡單的作品展示頁面
CSS定位機(jī)制之一:普通流
25個(gè)最佳最閃亮的Eclipse開發(fā)項(xiàng)目
Illustrator中制作針線縫制文字效果
Photoshop制作印刷凹凸字體
VS2010中創(chuàng)建自定義SQL Rule
>> 分頁 首頁 前頁 后頁 尾頁 頁次:1/21個(gè)記錄/頁 轉(zhuǎn)到 頁 共2個(gè)記錄

藍(lán)色理想版權(quán)申明:除部分特別聲明不要轉(zhuǎn)載,或者授權(quán)我站獨(dú)家播發(fā)的文章外,大家可以自由轉(zhuǎn)載我站點(diǎn)的原創(chuàng)文章,但原作者和來自我站的鏈接必須保留(非我站原創(chuàng)的,按照原來自一節(jié),自行鏈接)。文章版權(quán)歸我站和作者共有。

轉(zhuǎn)載要求:轉(zhuǎn)載之圖片、文件,鏈接請不要盜鏈到本站,且不準(zhǔn)打上各自站點(diǎn)的水印,亦不能抹去我站點(diǎn)水印。

特別注意:本站所提供的攝影照片,插畫,設(shè)計(jì)作品,如需使用,請與原作者聯(lián)系,版權(quán)歸原作者所有,文章若有侵犯作者版權(quán),請與我們聯(lián)系,我們將立即刪除修改。

您的評論
用戶名:  口令:
說明:輸入正確的用戶名和密碼才能參與評論。如果您不是本站會員,你可以注冊 為本站會員。
注意:文章中的鏈接、內(nèi)容等需要修改的錯(cuò)誤,請用報(bào)告錯(cuò)誤,以利文檔及時(shí)修改。
不評分 1 2 3 4 5
注意:請不要在評論中含與內(nèi)容無關(guān)的廣告鏈接,違者封ID
請您注意:
·不良評論請用報(bào)告管理員,以利管理員及時(shí)刪除。
·尊重網(wǎng)上道德,遵守中華人民共和國的各項(xiàng)有關(guān)法律法規(guī)
·承擔(dān)一切因您的行為而直接或間接導(dǎo)致的民事或刑事法律責(zé)任
·本站評論管理人員有權(quán)保留或刪除其管轄評論中的任意內(nèi)容
·您在本站發(fā)表的作品,本站有權(quán)在網(wǎng)站內(nèi)轉(zhuǎn)載或引用
·參與本評論即表明您已經(jīng)閱讀并接受上述條款
推薦文檔 | 打印文檔 | 評論文檔 | 報(bào)告錯(cuò)誤  
專業(yè)書推薦 更多內(nèi)容
網(wǎng)站可用性測試及優(yōu)化指南
《寫給大家看的色彩書1》
《跟我去香港》
眾妙之門—網(wǎng)站UI 設(shè)計(jì)之道
《Flex 4.0 RIA開發(fā)寶典》
《贏在設(shè)計(jì)》
犀利開發(fā)—jQuery內(nèi)核詳解與實(shí)踐
作品集 更多內(nèi)容

雜⑦雜⑧ Gold NORMANA V2