天才教育網(wǎng)合作機構 > 培訓機構 >

                                                                                        東莞設計培訓網(wǎng)

                                                                                        歡迎您!
                                                                                        朋友圈

                                                                                        全國統一學(xué)習專(zhuān)線(xiàn) 9:00-21:00

                                                                                        位置:培訓資訊 > “Flash全站”應該徹底的組件化

                                                                                        “Flash全站”應該徹底的組件化

                                                                                        日期:2005-12-24 00:00:00     瀏覽:195    來(lái)源:東莞設計培訓網(wǎng)
                                                                                        “Flash全站”好象很早就開(kāi)始了,因為界面很帥氣備受推崇。似乎每一個(gè)接觸Flash設計或編程的人,都希望做一個(gè)自己的。我也是。

                                                                                        但是我很困惑。因為據說(shuō)“Flash全站”開(kāi)始運行后,就不再請求或者很少請求URL了,換頁(yè)是通過(guò)換禎完成的。我開(kāi)始無(wú)法理解,從網(wǎng)上下載了幾個(gè)成品的源文件。

                                                                                        可是非常抱歉,所有的源文件都是巨型的,極其復雜的。action分布到各個(gè)frame和剪輯實(shí)例里,而實(shí)例都是托放的,你無(wú)法知道到底有多少個(gè)實(shí)例,主時(shí)間線(xiàn)有幾十層.......。這樣的東西既不是動(dòng)畫(huà)也不是代碼。結果就是無(wú)法調試,無(wú)法升級和修改。

                                                                                        不知道大家是怎么做的。

                                                                                        推薦的是,像Flex或Laszlo那樣做,或者干脆選擇它們的一個(gè),雖然我還不知道什么是Flex還有Laszlo。

                                                                                        不選擇它們的理由是:

                                                                                        1,我沒(méi)有空間,幾乎沒(méi)有虛擬空間對它們提供支持。
                                                                                        2,我沒(méi)有學(xué)Java,而是php或者.net什么的,而那兩個(gè)技術(shù)還不很支持其他技術(shù)。

                                                                                        即使是這樣,也應該使用XML來(lái)描述你的程序,把代碼和資源盡可能徹底的分開(kāi)。如果你熟悉Asp.net,就是< ..../>的形式。用這種語(yǔ)法定義任何諸如label的組件(我認為這是最困難的組件了)。

                                                                                        然后,為程序寫(xiě)一個(gè)XML解釋器,按照你寫(xiě)的some-page.xml文件,create,loadMovie,attach,duplicate一通,把它顯示出來(lái)。換頁(yè)就是請求新的xml文件,再解釋。

                                                                                        對拉!這聽(tīng)起來(lái)比在時(shí)間線(xiàn)上“蓋高樓”更困難和復雜。但是我覺(jué)得至少這樣做有三個(gè)好處:

                                                                                        1,我喜歡程序勝過(guò)畫(huà)畫(huà),我完成這樣一個(gè)站點(diǎn)等于實(shí)現了一個(gè)framework,會(huì )超有成就感。(光說(shuō)不練啊,這孩子)
                                                                                        2,這個(gè)站點(diǎn)變得可擴展(flexible,MM的產(chǎn)品寓意于此吧?),盡管僅僅對于它的開(kāi)發(fā)者來(lái)說(shuō)(要是有一套標準及不一樣了,MM就不學(xué)學(xué)sun呢?)。
                                                                                        3,對用戶(hù)來(lái)說(shuō),因為組件個(gè)數有限,即使大量重復也是flyweight的(享元模式),能很大的提高訪(fǎng)問(wèn)速度。

                                                                                        上述第3個(gè)優(yōu)勢意義不僅僅如此。

                                                                                        Html只是表達,Asp,Jsp,php這些東西最終也是生成Html。用戶(hù)只有一點(diǎn)點(diǎn)通過(guò)form參與互動(dòng)的機會(huì ),所以叫傳統的browser是瘦client。而Actionscript盡管效率低下,卻有了較強的client端計算能力。*可能強大到C/S的client一樣的程度。那么就厲害了。

                                                                                        可是,要是把和Server交互的代碼都堆在frame里......所以如果你的程序最重要不是動(dòng)畫(huà),而是要和用戶(hù)交互的所謂RIA,必須選擇組件化。

                                                                                        這里要提一下“偷偷下載”的問(wèn)題了?,F在的用戶(hù),比如我,才不會(huì )老老實(shí)實(shí)的看你的東西,這個(gè)頁(yè)面出來(lái)了,看不上兩秒就要點(diǎn)點(diǎn)什么按鈕啦。那就是換到別的頁(yè)了,你正在“偷偷下載”的東西自然是被拋棄了。不幸的,沒(méi)有下載完的swf好象不會(huì )存到本地緩存。那么一個(gè)100多k甚至幾百多k的頁(yè)面就沒(méi)有緩存的價(jià)值。

                                                                                        相反的,我要“偷偷下載”一些供顯示的組件,它們通常不應該超過(guò)30k。盡管數量可能較大(其實(shí)不會(huì ),你有耐心做50個(gè)花色的button?),但是等用到時(shí),它們大都在緩存里,會(huì )非??焖?。

                                                                                        組件化的代價(jià)是,用戶(hù)的CPU要大轉了,也更消耗內存,因為加載組件是在運行時(shí)。但是我覺(jué)得,比起網(wǎng)絡(luò )帶寬,CPU算什么資源?這正符合調劑高速CPU和低速I(mǎi)O的邏輯嘛。

                                                                                        以上內容和Flash課件,Flash動(dòng)畫(huà)里的action沒(méi)有任何關(guān)系啊。

                                                                                        如果本頁(yè)不是您要找的課程,您也可以百度查找一下:

                                                                                        奇米在线7777在线精品|国产成人精品免费视|精品无码不卡一区二区三区|国内综合精品午夜久久资源|亚洲视频在线观看..