設計思考:Flash Web結構淺析

 前言

  剛接觸Flash的時候是Flash6末期,國內的Flash Web(也就是Flash網站)還是很少的,牛X的更是屈指可數,而且這個時候所謂的牛X,一般都是指效果很酷,技術強的基本沒有。早期的Flash web開發者大都是由Flash動畫製作者或是網頁設計師轉變而來。他們非常熱衷於片頭和過渡效果,爲此不惜犧牲瀏覽者的等待時間並吃掉瀏覽者的CPU,所以好多人一談起Flash web就覺得它體積大,效率低。當然如果是個人網站,信息量小,大多都是一次性瀏覽的網站,酷眩的效果可以讓人過目不忘,這是普通HTML網頁所不能企及的。

  後來MM公司對Flash的連續兩次升級都把重點放在了AS上,AS內置類快速膨脹,功能急速擴展,AS2.0更是趨向標準的面嚮對象語言。這時候一大批程序員又被吸引進來了,尤其是那些有C或者JAVA背景的牛人們。可惜他們總喜歡用程序員的思維去評判Flash web,甚至用軟件開發的標準去往Flash web開發上硬套,結果肯定是失望,很多人武斷的就把責任推給了Flash:“Flash web結構混亂,基於時間軸的AS寫法奇怪,Flash web不適合大規模的商業應用開發!”。就這樣Flash web的前途被宣判了死刑。

  於是造成現在一個非常有意思的現象:很多以前動畫很牛的前輩們,都去職業搞動畫片製作了,併爲Flash動畫的產業化和商業化勇敢探索着,有些已經取得了輝煌成就;而Flash7之後進來的程序牛人們,直接從事Flash遊戲開發和Flash RIA應用開發了,他們更習慣基於事件的編程和麪向對象的開發模式,時間軸對他們的意義已經不再重要。這樣以來Flash web開發成爲一箇中間斷檔帶,也是人才最稀缺的地帶。很多目前從事Flash web開發的人員應該都是從HTML網頁製作人員簡單學了一些Flash後過渡過來的,他們即非動畫高手也非程序高手,更多的是網頁設計高手。然而這些設計高手又總愛拿Flash跟PS比,結果Flash web開發還是沒得到好的口碑。

  我從最開始學習Flash就是以做網站爲目的,這兩年多來,我所學的一切都是以Flash web開發和應用爲核心,我幾乎嘗試了所有常見的Flash web結構形式,我時時刻刻的都在考慮如何在保存Flash優勢的情況下,又能開發出有實際應用價值的高效率的商業作品,最終將Flash web開發模式化,快速化。

  那麼Flash web的優勢在那裏呢?對於展示性的網站,當然是Flash酷眩的效果,這點已經被大多數人所共識。但對於包含大量信息,需要經常更新的Flash web,它的最大優勢就不再可能是效果,因爲Flash的效率實在不敢恭維,大量的效果會影響人們對信息的查詢效率,現在網絡帶寬也不容樂觀,大量的動畫必將造成SWF體積膨脹,影響瀏覽速度。那麼大中型信息類Flash web的優勢到底是什麼呢?在筆者看來,最大優勢只有兩點而已,一是界面佈局靈活,二是數據的無刷新更新。還記得我們以前在DW中拉表格的痛苦嗎?還會爲了網站佈局工整寫一堆CSS和JS嗎?還用得着每次更新數據就打開一個新頁面嗎?Flash web的兩大優勢使這些歷史的痛苦都成爲了過去。而且,這兩點如果處理恰當的話,就已經足夠給普通的瀏覽者帶來全新的用戶體驗了。

  我這兩年來一直也都是處在學習和探索階段,還不是真正的理論研究階段,兩年時間太短了!我的很多想法和理論還很不成熟,甚至是幼稚的。我現在拿出來和大家分享,不求說服誰或者證明什麼,只求能給大家一些啓發,同時自己也好好總結一下。下面就粗淺的談談我目前對Flash web尤其是Flash web結構的認識吧。

  Flash web結構概述

  現在的Flash web真是百花齊放,形形色色的Flash web使人應接不暇。自由靈活是Flash web的生命力所在,但這也正Flash web商業化的主要瓶頸之一。商業最看重的是效率,而無規則便無效率可言。那麼Flash web是不是真的就一點規律都沒有呢?非也!縱觀現在所有的Flash web(Flash RIA應用程序除外,比如Flash塗鴉板、地圖等等),不管它們技術怎麼牛,效果怎麼酷眩,都不能逃脫以下四層結構:

  1. 動畫層(Movie)
  2. 背景層(Background)
  3. 數據顯示層(Display)
  4. 數據層(Data)

  這些概念其實都不新穎,看到這些我自創的名詞,一些有經驗的開發者們肯定立刻都能猜出一二來。爲了以後論述方便,簡稱MBDD式。

  我以下的所有討論都將緊緊圍繞這四層結構進行,因爲在我看來,Flash web的靈魂就是它的結構,一個Flash web的技術含量不是看它某些特效多眩,更不是看這個WEB中有個什麼新穎的、牛X的技術應用,關鍵是要看它通過什麼手段有效的把各種元素統一起來的!
  最後我要提前說明的一點是,MBDD式是對所有Flash web的概述,很多Flash web根據其功能不同可能缺失其中某些層,下面我會仔細講解。

  至於Flash web涉及的其它方面,我都略過,畢竟我這篇是總結性的文章,不是教程。Flash web也不是我一篇文章就能寫全面的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章