<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    云自無(wú)心水自閑

    天平山上白云泉,云自無(wú)心水自閑。何必奔沖山下去,更添波浪向人間!
    posts - 288, comments - 524, trackbacks - 0, articles - 6
      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    在Flex應(yīng)用中使用模塊(modules) I

    Posted on 2007-02-06 00:05 云自無(wú)心水自閑 閱讀(1079) 評(píng)論(2)  編輯  收藏 所屬分類: Flex 、Flex2

    有許多方法可以把一個(gè)應(yīng)用拆分成基于個(gè)獨(dú)立下載的部分。甚至于將每個(gè)類都分成單獨(dú)的文件,由ClassLoader在需要的時(shí)候加載。但是如果這樣效率是比較低下的,因?yàn)轭惖囊糜兄黠@的“引用地域”;如果你引用了一個(gè)類,往往會(huì)馬上牽涉到需要引用一大堆其他的類,如果把這些類全都打包在一起,效率會(huì)高得多。

    由編譯器自動(dòng)選擇一個(gè)非常好的打包方法是比較困難的。很可能需要在應(yīng)用開發(fā)時(shí)進(jìn)行一些設(shè)定,并不時(shí)地監(jiān)控類的引用。能夠統(tǒng)計(jì)出最優(yōu)的分拆方法:應(yīng)用應(yīng)該分成幾個(gè)SWF,哪些類應(yīng)該放在哪個(gè)SWF中。但是這種方法聽起來(lái)更象是一種研究范疇,實(shí)際操作起來(lái)非常困難。

    讓我們來(lái)看一些更具有操作性的方法。

    很多應(yīng)用分解后,包含兩種類型的功能:“啟動(dòng)后立即填充”和“啟動(dòng)后稍后填充”。

    有許許多多的應(yīng)用是這種模式的。比如:游戲;你有一個(gè)游戲引擎和一些游戲場(chǎng)景?;蛘逷ortals和Porlets; 一些基礎(chǔ)的共享功能和數(shù)據(jù)驅(qū)動(dòng)的小應(yīng)用。或者是一個(gè)大型的有著1500個(gè)頁(yè)面的保險(xiǎn)應(yīng)用,運(yùn)行特定功能是只會(huì)訪問(wèn)一小部分的頁(yè)面?;蛘呤浅涑獯罅?jī)?nèi)容的應(yīng)用,它可以獨(dú)立的更新部分內(nèi)容而不是強(qiáng)制用戶每次瀏覽時(shí)都必須下載全部?jī)?nèi)容。

    我稱這些相對(duì)獨(dú)立的可以延遲加載的功能為“模塊”(Modules),稱加載模塊的應(yīng)用為“Shell”。

    在這里,我們先不看如何做,先來(lái)看一些

    shell需要能夠與模塊交互,同樣模塊也需要和Shell交互。如果shell引用了modules的一個(gè)類,那么它會(huì)把它鏈接進(jìn)來(lái)。同樣,如果模塊類引用了shell類,它也會(huì)把它鏈接進(jìn)來(lái)。應(yīng)用能正常運(yùn)行只有兩個(gè)方法:或者引用是相同而且共享的(這樣就不需要下載兩次),或者兩者是不同的,而且沒有任何關(guān)系(盡管兩個(gè)類名字相同,但是它們被認(rèn)為是無(wú)關(guān)的,而且不能交互)。

    最好的解決辦法是讓模塊和shell通過(guò)接口交互。這樣,shell不需要引用模塊,而是引用模塊會(huì)實(shí)現(xiàn)的一些接口。同樣,模塊不實(shí)現(xiàn)shell的類,而是允許調(diào)用的API接口。

    這樣在shell變化的時(shí)候減少了重新編譯模塊的次數(shù)。具體實(shí)現(xiàn)的變化頻率往往會(huì)比接口本身的變化高得多,而只要接口穩(wěn)定,就不需要重新編譯所有的東西。

    注意:需要使用extern(或者extern-library-path)選項(xiàng)來(lái)創(chuàng)建模塊,這樣可以自動(dòng)剔除shell的類,因?yàn)槟K是被加載到shell的子應(yīng)用域中的,將shell的類剔除是安全的。這樣模塊可以真正直接引用shell中的類。


    ?




    評(píng)論

    # re: 在Flex應(yīng)用中使用模塊(modules) I  回復(fù)  更多評(píng)論   

    2007-02-06 09:22 by nshen
    有個(gè)例子就好了

    # re: 在Flex應(yīng)用中使用模塊(modules) I[未登錄]  回復(fù)  更多評(píng)論   

    2007-02-06 09:59 by 云自無(wú)心水自閑
    例子馬上就有.
    主站蜘蛛池模板: 黄页网站在线看免费| 日韩成人免费在线| 中文字幕av无码无卡免费| 亚洲高清在线播放| 一级毛片免费视频| 亚洲福利视频一区| 120秒男女动态视频免费| 亚洲精品无码久久久久久久| 久久午夜夜伦鲁鲁片免费无码影视| 久久夜色精品国产噜噜噜亚洲AV| 三年片在线观看免费观看大全动漫| 亚洲人成在线播放网站岛国| 亚洲av中文无码乱人伦在线观看| 中文字幕看片在线a免费| 亚洲自偷自偷图片| 日韩午夜理论免费TV影院| 亚洲a级片在线观看| 日本免费无遮挡吸乳视频电影| 日韩精品亚洲专区在线影视| 免费国产真实迷j在线观看| 黄色网页在线免费观看| 亚洲AV日韩AV永久无码下载| 又黄又爽又成人免费视频| 亚洲AV无码一区二区三区性色 | 亚洲天天做日日做天天看 | 猫咪免费人成在线网站| 久久夜色精品国产亚洲av| 一级毛片免费观看不卡的| 亚洲人成小说网站色| 四虎影在线永久免费四虎地址8848aa | 中文字幕一区二区免费| 国产成人无码区免费A∨视频网站 国产成人涩涩涩视频在线观看免费 | 老司机午夜免费视频| 亚洲国产精品一区二区第一页| 精品无码免费专区毛片| 久久精品国产精品亚洲艾| 一二三四在线观看免费高清中文在线观看 | 99久久精品免费视频| 亚洲av午夜国产精品无码中文字| 亚洲国产无套无码av电影| 毛片免费观看视频|