Re: [閒聊] Is flash dead?
正當我想回應這篇文章的時候,ZDNet 台灣翻譯了一篇好文章
是 Adobe、Opera 等方面對於 HTML5 vs Flash 的一些看法
跟我的想法某種程度上有點接近,很有參考價值
HTML vs. Flash:地盤大戰在即?
http://www.zdnet.com.tw/news/software/0,2000085678,20144150,00.htm
---
然後,我想用比較技術一點點的角度
去比較看看 Flash 和其他的 Open Web Standard 之間目前的「競爭」關係
也試著把每一種技術的優缺點都作一個簡單的評定
Fx = Firefox; GC = Google Chrome; JS = JavaScript
2D繪圖與應用:廣告、Flash 動畫、全板網頁
這一塊是 Flash 的不敗之地,我覺得五年內都很難看到下一個足以取代的應用。
談 Flash 的 2D 繪圖又可以分為兩大支:向量的部份和點陣的部分,而這些東西早在
Flash 4 的時候就可說是大致底定,一路沿襲至今:包含了影格的時間軸概念、豐富的
向量工具、物件的轉場效果、點陣圖支援、單獨的MovieClip物件、ActionScript的
Scripting支援、還有更重要的,一個方便至極的UI來完成以上的所有工作。
Open Standard 在這一塊上面顯得有點無法競爭。
在點陣方面,HTML5 提供了 <canvas> 可以用作 2D 和 3D 的點陣繪圖(3D 的部份請容我
之後再講),在 2D 方面已經有了畫線、填滿、填圖等等的項目被定義在目前的標準草案
之中,且 Fx/GC/Opera 都已經有了一定程度的支援。(這算是回上一篇推文,對,HTML5
有點陣繪圖)您可以使用 JavaScript 透過 DOM 去進行對 <canvas> 的繪製。
在向量方面,HTML5 沒有相關的東西,但是 W3C 有另一個標準叫 SVG,是以 Markup
Language 來表達向量圖形。然而 SVG 目前的應用都偏在靜態向量圖片,儘管已經開始有
搭配 JavaScript 作 Scripting、搭配 SMIL 作影格的方案慢慢浮出,但目前為止都不成
熟。
而更大的重點是這些技術都在開發中,光成熟就要等很久,更別提一個好的開發環境。
這一塊應用大部分的使用者都要求一個快速、方便、穩定的開發環境,您不會為了想做
一個廣告而浪費數十個小時在瀏覽器的差異或不明的錯誤之間 Debug 吧 :P
全板網頁是另外一個有趣的問題。以網頁而言我覺得在搭配 CSS3 的轉場和一些
JavaScript 的輔助效果之後,絕大部分全板 Flash 網頁的技術都會有解決方案。
至於 CSS3 目前的採用程度嘛...(搖頭
3D相關、Flash Game
提到3D的話,我覺得兩邊都有太長的路要走。
雖然在 Flash 已經有了成千上萬的 3D 模擬函式庫,但硬體支援的缺乏應該不是短期之
內就能解決的問題,複雜的 3D 極耗費系統資源的狀況應該也會維持一段時間。
HTML5 雖然有 3D 的 <canvas>,但也是在極草創的階段。目前 Mozilla 方面力推 WebGL
作為 3D 的 Canvas 標準。WebGL 的作法是將 OpenGL ES 2.0 API 開放給 JavaScript
運用,藉而達到透過 OpenGL 的硬體加速。
而 Google 則自己另外有在推 O3D,以 JS + 可支援 OpenGL 或 DirectX 的內層 3D 引擎
在使用上將 3D 引擎作為 Plugin 執行,是另一個 3D 網頁應用的可行方案。值得一提的
是 O3D 的模式可能比較容易提供既有 3D 軟體內容的轉換?(不確定
參考:http://sapessi.com/2009/10/webgl-and-o3d/
Flash Game 通常都包含複雜 2D + 3D 運算和複雜的 Scripting、遊戲記錄。而 3D 可能
是目前最大的一個可取代點。揪~竟~ Flash + ActionScript 會不會在這一塊上面,
繼續將 WebGL + JavaScript / O3D + JavaScript 壓著打呢?拭目以待。
「所謂的」RIA
之所以說所謂的是因為我一直都認為 RIA 是個 Buzzword(被打
其實我想討論的是互動、多媒體影音、類似桌面程式介面相關的網頁應用
Flash 陣營在這一塊也培養了非常非常久,有一個完善的 Flex Framework,可以透過
MXML 撰寫介面和用 ActionScript 撰寫程式部分,將其作為 Web Application(透過
Flash Plugin 執行)或著桌面程式(Adobe AIR)來執行。而就算不論 Flex(也不論到
了 4.0 Beta 以後產生出來的 SWF 已經 390KB 起跳了 =口=),Flash 本身也幾乎提供
了大部分 RIA 所需的元素,像 NetStream(影片、串流、Webcam,好例子是 YouTube)、
Local Shared Object(本機儲存區)、FileReference(多檔上傳,如SWFUpload)等等
。
然而 HTML5 以前叫做 Web Applications 1.0:擺明了就是要攻 RIA。所以 RIA 應該要
有的東西 HTML5 正在慢慢一次到位:<video> 和 <audio> 的影音播放、localStorage
的本機儲存區、可追蹤上傳進度和多檔上傳的 File API 都已經有瀏覽器支援。
甚至連 Webcam,也已經有草案說未來可以用 <device> 來操控了。
HTML5 在這塊上的危機是瀏覽器支援的成果。Ogg Theora 和 H264 AVC 的影音格式大戰
至今懸而未決便是冰山一角。YouTube和Dailymotion都已經開始實驗基於<video>的播放
介面,唯一邊是 H264 AVC(GC / Safari 支援),一邊是 Ogg Theora 格式(GC/ Fx
支援)。Google 似乎不太喜歡 Theora,但其買下 On2 之後會做什麼值得關注。
結語
我的觀點是 Flash 在至少五年內都仍然會維持主流地位,然而後起之秀值得關注。
Flash 很棒,而且是超級棒,是一整個完整的 Solution,無論是做 Flash 動畫、
3D 遊戲、RIA 都有極方便方案。至少就方便性來講短期內難以取代。
而 HTML5、JS、CSS、SVG 異軍突起,帶著制定 Open Standard 來推翻邪惡 Adobe(誤)
的理念,開始一步一步嘗試各種新奇的可能性。但是距離開花結果還有很長的距離。
在這段時期最重要的我覺得是「Learn」。就連 Flash 自己也在日新月異,所以這是一個
需要不斷學習新網頁技術的時期。要怪就怪 2004 年火狐吹皺一池春水吧!(大誤
(本文作者為嘴砲網頁設計師,在這一波中算是 HTML5 派。由於寫某個套件的原因花了
很多時間在學習 Flex + AS3 上。Flash 使用次數趨近於零。)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.170.67.12
※ 編輯: ybite 來自: 218.170.67.12 (02/06 03:00)
→
02/06 20:15, , 1F
02/06 20:15, 1F
→
02/07 01:32, , 2F
02/07 01:32, 2F
→
02/07 01:34, , 3F
02/07 01:34, 3F
推
02/25 12:28, , 4F
02/25 12:28, 4F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):
20
48
Flash 近期熱門文章
PTT數位生活區 即時熱門文章