Flash 真的是「落後的技術」嗎?

喬布斯曾以 Flash 在開放性、「完整的Web」、電池續航時間、性能等方面的不足為由,一直拒絕讓 Flash 登陸 iOS 設備。微軟最近在 Building Windows 8 博客上表示,針對平板電腦優化的 Metro 版 IE10 不支持插件,因為插件提供的體驗 「不如 Metro 和 HTML5」。

Flash 在手持設備上如此尷尬!Flash 真的很落後么?


從技術上說,Flash 並不落後。但是 Flash 試圖以 plug-in 的方式盡 platform 的職責,這條路選錯了。

對於 @王宇鵬 的發展論和成功案例論,個人認為對這個答案不對題。

平台的生死從來不是純粹的功能發展快慢的比拼。Flash 功能加的快,有 native 方案快嗎?Flash 的成功是在 ubiquity 和功能上打了 web 和 native 一個時間差。隨著一些 startup 變成 well-established 開始轉入 native 方案,隨著 Web 的功能足夠好用。留給 Flash 的空間越來越小。所以 Flash 不是落後,而是被窒息了。

再吐槽所謂的「成功案例」。網上不時充斥著,我用什麼技術如何如何。只能說,那是你的成功案例。我寫 Photoshop 會用一些 C++(也會用 C,而且我更願意用 C),因為 Photoshop 是一個積累很久的平台,在上面添加價值需要遵循一些規則。但是如果新開發一個 iOS 的東西還用 C++ 就比較傻(不乏成功案例,但是都是小團隊約定好用 C++ 的 subset,基本上屬於 overkilling)。在一個成功的投資基礎上再投資,不意味著可以以此來炫耀給新的投資者看。好的投資者,會分析自己的成功中哪些是僥倖,哪些是用專註抵消了次優的決策。不是你成功了你的決定就都是最優的。


flash就像超級兔子類軟體一樣,是為了彌補平台的不足而產生的,當平台不斷完善的時候,這類軟體必然沒落。


Flash是當前地球上最方便易用的矢量工具、動畫工具、結合矢量點陣圖動畫的編程工具!

既然最好,Flash為什麼被封殺:

一、更多是商業政治戰爭
企業的唯一目的就是盈利,作為蘋果總裁喬布斯深諳此道。iOS最多的應用就是遊戲,用Flash開發遊戲又快又好(開發效率遠遠超過XCode)。但如果Flash流行的話,通過網頁能直接訪問,蘋果的應用商店就賺不到錢了(蘋果抽取30%銷售額)。

移動設備系統更小巧天生封閉性更強,清理門戶增強廠商的控制力以獲取更多利益是在所難免的。其實原生態的計算機設備都是封閉系統的,像全球第一個普及的個人電腦Apple,任天堂FC,Wii,索尼PS系列,XBOX系列都是封閉系統,而遊戲機更是將軟體分發也封閉獨佔了(避開廠商分發遊戲是非法的)。iOS和WP應用商店只是借鑒了這種模式而已,印象中似乎Wii裡面很早就有應用商店吧。IBM PC當初為了戰勝Apple,不得已犧牲自己的利益,將軟硬體全開放。造成了目前PC全開放的格局,雖然戰勝了Apple(喬布斯因此下台,蘋果PC佔有率從一統天下到了不足5%),硬體開放最終把IBM自己也給革命了。

二、用戶體驗
封閉的iOS,我感覺安裝軟體找軟體更方便了。在PC上,也習慣用360軟體管家安裝不重要的常用軟體。Flash作用最大的視頻網站現在都提供了iOS播放支持,沒有太大差別。而Flash遊戲從來都不是主流。如此一來,封殺Flash對用戶沒有太大影響。我沒有見到有聲音強烈抗議蘋果不支持Flash吧。至於喬布斯說Flash耗電完全沒有根據,也許按目前PC上的Flash播放器放在移動設備上比較耗資源。但Flash移動版完全可以讓後台的Flash暫停,不消耗任何能源,或者對引擎進行耗能優化。總之,Flash就像門口生意不錯的包子鋪,以熱氣太大硬生生被房東趕走了。誰讓人家控制了平台呢,何況目前房東的餐飲店更豐富,顧客也不在意。

三、微軟暗戰
微軟早期IE內置了Flash,後來就沒有了。微軟就像中國的騰訊一樣,一般有啥好的,就自己也想弄一個。但國外有更嚴苛的專利和版權法,一般都不會照抄。如此一來,山寨的細節就不一定比原創的好了。微軟自己的Sliverlight像一坨翔一樣,但微軟一直耿耿於懷。到了WP時代,借鑒Apple的做法,微軟終於可以名正言順的封殺Flash了。當然,替代方案是什麼,微軟也沒想清楚吧。HTML5,Media Player,Sliverlight for WP,其實移動設備原生App已經很牛了。
為啥後來達成協議Win8內置了Flash,我猜想可能是防止Flash總彈出來更新吸引眼球吧,先把發布權收回自己手中。

四、Flash的地位
Flash是地球上最方便易用的矢量工具、動畫工具、結合矢量點陣圖動畫的編程工具。 這一點毋容置疑。但Flash從來都不是現象級的工具,在專業領域Flash有大量的競爭替代產品,Flash更高效但是更大眾化,而大批更低效但是更專業才是領域的主流。包括圖形設計、動畫片製作、遊戲開發等等皆為如此。Flash的地位,就像是雜耍藝人,可以在一些小場面裡面趕一趕場子。或者個人學兩招在小眾面前擺弄幾下。Flash依然是網頁上最好的矢量動畫工具,但我們眼球已經跑到視頻上去了。目前,Flash最強大的就是網頁遊戲吧,當然網頁遊戲本身就是非主流的。

Flash依然很好,但是當幾大門派的長老都說,Flash不要來我們幫派玩的時候。還有多少人有信心一直和Flash親近呢。連Adobe自己都沒有信心,居然說出還會保證支持5-10年的軟話來。就像當初的Delphi一樣,就算在目前Delphi也可以算是Windows上最高效的桌面開發工具(開發效率+運行效率),就這樣被微軟用不斷變化的.net介面生生拖死了。5年前就沒人用了,即使現在老版本的Delphi依然是最高效的桌面開發工具,大家卻一窩蜂簇擁在長老推崇的運行緩慢龐大的.net身旁。
心散了,隊伍不好帶。即使十年後Flash依然是最好的矢量動畫工具,但現在如果有替代品的話大家依然會躲避Flsh的技術方案。長老們即使沒有說不讓我們在可行的領域用Flash,但那種高級別的威壓已經過來了。Flash現在口碑上有點痛打落水狗的味道,雖然無辜的它沒有得罪過誰。在這種氛圍下,一個很優秀的人也會傻了吧。

五、Flash生存法則
上帝喬鐵腕封殺了Flash。媒體的論調,Flash要滅亡了。社區裡面蕭索不已。元芳你怎麼看?
(1)、如果你是一個Flash設計者或者開發者,繼續悶聲發大財。Flash倒不了,開發App小遊戲也沒問題。
(2)、如果你是一個執著於Flash的初學者,對矢量動畫或AS動心。那就堅定的學下去吧,現在的Flash比5年前的應用更廣闊。好消息,Flash已經成功衝破了兩大長老的封殺可以發布App了,Win8也內置了Flash。
(3)、如果你反覆糾纏於是否要學Flash,那請果斷離開。Flash終究不是大熱,無需糾纏。
(4)、如果你是曾經的閃客,我可以告訴你閃客時代已經過去了。現在是視頻和App的時代。
(5)、如果你是打醬油的,我奉勸你一句:。。。。。。把瓶子拿好。


jobs這麼說只是因為Adodb打劫了他的利益。視頻播放技術是一種基礎技術,所有大的廠商都不會把這個節點交給別人,所有才會有html5,metro,webM.就技術來說flash發展了這麼多年了,在視頻處理,流媒體上的經驗遠遠高於前面提到的幾個。


很多人不了解Flash, 才覺得的flash問題,實際上flash是發展的最快的平台, web會死flash都不會死, 這年頭誰發展慢就會死, 你要知道flash都有哪些功能就會發現html5太慢了."
///後補充的
最近號稱flash殺手的silverlight 也關閉了, 誰敢再號稱是下一個flash殺手
///

引用7yue的微博:
Flash殺手論不好使了,來了被替代論。替代論不好使了,又出來了被拋棄論。靠著Flash,這些年我買了房,購了車,生了娃,娶了媳婦,玩著攝影,跑
著單車。如果按照以上幾種媒體論調,吃飯傢伙換來換去,我一家子早TM喝西北風了,相信媒體?牛都可以天上飛了。開發者最不能相信的就是媒體的話,誰信誰
掛。


先看看是怎麼被蘋果弄死的。 Apple官網原文:Thoughts on Flash

大眾媒體對前幾條津津樂道,卻對最重要的一條視而不見。
看到了吧,所有第三方開發都得死,敢弄起來就整死你。H5,phonegap,微信等等 將來會不會觸及這條紅線呢?移動互聯網又該如何發展呢?


flash主要問題還是在於沒能跟上移動大潮和沒有能夠在底層上優化好性能和功耗(據說是flashplayer那套代碼已經無人能改,重寫,adobe估計也不想費這個錢)。比如很多網頁flash卡,cpu高,風扇狂轉,也可以說是製作者的問題,也可以說是adobe的問題。adobe推出了Stage3D,但是除了部分頁游,其實很多的flash應用並沒有使用Stage3D。所以造成了一個看起來非常奇怪的結果,adobe自己聲稱大幅提升了flash的渲染性能(官方說有1000倍),但是很多用戶仍然覺得flash費cpu和風扇響。因為大部分的flash應用仍然運行在cpu模式下。adobe指望大家都重寫自己的項目。但很多在運行的項目都沒有重寫。很多項目因為各種原因都沒有使用stage3D去重寫。遊戲用stage3d是合適的。但是仍然有很多非遊戲的在運行的項目。所以結果就非常奇怪了,新的3D遊戲因為用了stage3d性能杠杠的。而老的項目因為adobe沒有去優化這部分而給人感覺還是那樣卡。adobe升級flashplayer的提示簡直就是騙人。因為其實adobe只是優化了stage3D的部分。

然後在AdobeAIR移動開發工具的競爭中沒有確立好自己的優勢地位,對比cocos,unity,object-c,java原生語言幾乎沒有多少優勢。跨平台開發看起來對比oc,java是個優勢,不過adobe重點又放在遊戲上面。
基本上屬於啥都能幹,但是啥都幹得不怎麼好的類型。萬能型工具是個優點,同樣也是個缺點。

而Adobe放棄移動端flashplayer改AIR的策略方便了遊戲開發者,同樣導致了在PC網頁除了遊戲領域之外的大幅衰退。算是得一城失去多城吧。


只知道一旦播放起flash視頻,我的電腦cpu溫度就起來了,cpu負載了起來了,電量消耗得很快。播放一般其他格式視頻的時沒這麼明顯。


FLASH 視頻 CPU溫度高,問題在於不是調用硬解碼介面。

說起硬解碼, ios 的硬編解碼介面VideoToolKit 是iOS才開放,之前有XMBC之類的開源播放器能用hack的方式調用(只能運行在越獄機器)。android的硬解碼介面MediaCodec 是API16(Android 4.0.3)才開放,之前可以用MediaRecoder+Localsocket 方式隱晦地調用硬編解碼功能(Android2.3 API-9 開始支持H264 格式),ffmpeg的代碼裡面有Android調用的libstagefright的硬解碼H264 的代碼,那是神坑,是和Android的系統源代碼一起編譯的,如果設備的系統和編譯用的Android版本不一樣或者被修改,根本沒法用。


我覺得flash直接導出html5 canvas之後 flash其實只是前面的一個工具 最終導出成apk、exe還是html都是浮雲 flash並沒有沒落


近來flash的生存問題,一直困惑著喜愛flash技術的人,是不是堅持。如果看未來,使用範圍慢慢會縮小,但眼前在PC端還會使用。移動端可能會拋棄flash。蘋果不支持,不久安卓也會不支持了。
我總結了幾點:
1,如果為了謀生,值得慎重考慮。把精力放在前景好的技術,會更加可靠。
2,如果為了那份喜愛flash情結,比如眾多「閃客」們。作為豐富自己業餘愛好的。可以學習一下。


技術都只是工具,能利用工具實現大幅商業盈利的flash利用率很廣泛,說落後有點牽強。純技術來講的話,強大的矢量圖工具利用的頻率很高,當然flash也是二維動畫製作的常用工具


推薦閱讀:

蘋果為什麼不支持flash,而是用html5技術呢?
喬布斯說Flash很耗電,有什麼數據可以證明,或者可以解析下是什麼原因導致耗電?
有什麼辦法把網站上的 flash 下載下來?
win7全屏看視頻時任務欄不消失怎麼解決?
自學 Adobe Flash 與 Adobe Photoshop CS6 的書籍或網站有哪些值得推薦?

TAG:Adobe | 計算機網路 | AdobeFlash |