Thoughts-on-flash 雙A為了 Flash 大戰了好幾回合,這次老賈親自上火線,寫了一篇超長的文章對 Adobe Flash 使出必殺技攻擊,當然也引起了不少看戲的鄉民,看完了"Thoughts on Flash"全文翻譯之後,相信大家都還有不少問題,這次我們訪問了T 客邦技術經理兼資深科技部落客 「XDite」,用軟體開發者的角度來看這一次的 Flash 大戰。後續我們也會持續追蹤、補完相關話題,包括HTML5、Flash的基礎概念,廠商的後續回應(戰況XD),以及這些網頁技術的實際效能表現。

小恩:在老賈的文章中,看到了不少對著 Adobe Flash 的炮火,這點XDite怎麼看?

XDite:雖然蘋果很惡霸。但事實上要打造一個優質軟體開發圈(ecosystem)本來就必須如此決斷取捨,Android 圈就是過度自由,且沒有考慮到 API 版本與機器間的差異,造成市場上充斥著太多運行異常的 app,導致使用者對整個 Android App ecosystem 信心上的崩盤。

「我們從痛苦的經驗中得知,讓第三方軟體在平台與開發者間做為中介,最終必然會做出次於標準的程式,並且阻礙平台的進步與時程。」我覺得在Jobs公開信裡這句話是重點。

小恩:所以對於開發者來說,有所限制的開發環境是好的?那你覺得 Apple 封掉 Adobe Flash 是為了自己的利益嗎?

XDite:Apple 這樣搞,除了不想被人家瓜分利潤之外,最重要的理由的確是如此。現在的程式大多是直接使用 Apple 的官方 API 所開發的。官方會確保不管平台怎麼變,軟體都能夠很正常、穩定的在上面運行。不管是 3.0,3.1 或者是之後的 4.X。

小恩:Flash不是也是官方提供API給使用者開發嗎?這兩種又有什麼不同?

XDite:但是多加了一個第三方中介層就不一樣。比如說 Adobe 的 Flash 轉 iPhone App 好了,這東西絕對是硬轉的,官方的更動可以讓使用原生API的軟體繼續穩定的運行,但是那些透過第三方中介層開發的軟體,卻有可能因為官方底層的 API 變更,導致App運作不正常或整個當掉。

小恩:這個不只對開發者是困擾,如果我們使用者一升級就會當掉,那也是很煩人。

XDite:現今只有 Adobe Flash 一家,如果 Apple 允許了第二家、第三家,混亂的情形就會更嚴重,到時候 Apple 會面臨的是,他們官方的 API 變更會遭受到第三方平台的限制,因為他們不能變更啊,一變更就一堆人的軟體爛掉,這樣勢必會阻礙這個平台的穩定發展。

小恩:聽起來的確是很可怕。

XDite:再來就是,這個軟體市場,如果充斥著到處都是爛掉的軟體,那會如何?

小恩:做為使用者的角度來說,當然就是離開這個平台。

XDite:對,那會造成消費者對 Apple App 的信心崩潰,我花錢或花時間安裝了軟體卻可能是大地雷,完全無法確保每次下載軟體的品質,或者是花了錢卻無法得到永久的高品質體驗,整個App市場會因此崩潰,就如同現在的 Android 的軟體市場亂象一樣。

小恩:謝謝XDite在忙碌寫程式中還接受這段訪問。

編輯觀點

聽完了XDite的分享,小編想起某位Apple員工說的一句話:「Steve Jobs是老江湖,他太清楚放任第三方廠商的需求,最後會怎麼搞垮自己」。現在想想果然是真知灼見。就開發者的角度來看,Apple 的限制是可以提升軟體的品質,而就使用者的角度來說,最終的軟體用什麼技術其實完全不是重點,重點是讓我玩到我要玩的遊戲,或是順利的執行程式。Flash 這場戰爭還會持續下去,是生是死還未定案,而你又是怎麼看的呢?

延伸閱讀

大家的回應

  • Avatar
    1.  Alex (發表於 2010年4月30日 16:09) 引用回覆
    為何...
    會想到OpenGL......3.0
  • Avatar
    2.  A (發表於 2010年4月30日 16:15) 引用回覆
    除非 Adobe 能快速、有效率,並且長期的將 Flash 的缺點改善!
    否則絕對很明顯的,Flash 完全沒有在行動裝置上支援的必要!
    這只會讓使用者還有開發者都很頭疼罷了!
  • Avatar
    3.  edward (發表於 2010年4月30日 17:02) 引用回覆
    Android App ecosystem 信心上的崩盤??
    這哪來的??
  • Avatar
    4.  路人 (發表於 2010年4月30日 17:20) 引用回覆
    我以為XDite是在pixnet上班呢
  • Avatar
    5.  edward (發表於 2010年4月30日 17:24) 引用回覆
    使用第三方的中介層並不見得會降底軟體的品質。反之,更有助於隔離系統底層 API 的變動。例如,Java 及 Flash 開發出來的應用,可以直接在不同的 OS 及硬體平台上直接執行。如果在不同的平台上執行出現問題,反而提供這第三方的中介層 API 的廠商會設法解決。

    我認為 Apple 限制第三方 API 的用意很簡單,就是借此強迫開發人員,一律使用 Objective C, 在 Mac 上用 XCode 開發,IPhone 及 Mac 彼此拉抬,以擴大市占率。
  • xxddite
    6.  xxddite (發表於 2010年4月30日 17:58) 引用回覆
    我被調到 T 客邦了...都是城邦集團底下的公司
  • Avatar
    7.  Felix (發表於 2010年4月30日 19:46) 引用回覆
    XDite:但是多加了一個第三方中介層就不一樣。比如說 Adobe 的 Flash 轉 iPhone App 好了,這東西絕對是硬轉的,官方的更動可以讓使用原生API的軟體繼續穩定的運行,但是那些透過第三方中介層開發的軟體,卻有可能因為官方底層的 API 變更,導致App運作不正常或整個當掉。

    這句話有待商確,現今除了Flash , Java(JVM) , python(PVM) , ruby ....很多都是植基在VM Base的軟體開發平台,而事實證明,這些VM對軟體工程的產能絕對有正面的助益,更能讓軟體在多種硬體間移植的成本大幅降低,誰說用Native code開發程式就不會造成當機的? 軟體品質控管請不要和VM混為一談。

  • Avatar
    8.  lRabbit (發表於 2010年4月30日 20:03) 引用回覆
    我覺得 XDite 這樣講究有點危言聳聽了。
    而且 Android App ecosystem 信心崩盤那段是哪來的? Native Code 在"官方底層 API "更動後絕對不會當機? VM 本身也是個 Native Code 開發出來的東西啊! 怎麼會這樣解釋? 真奇妙。
  • Avatar
    9.  讓使用者選擇 (發表於 2010年4月30日 22:46) 引用回覆
    我認為功能還是要有,但是預設關閉,留給使用者選擇是否開啟比較好~
  • Avatar
    10.  起碼是個懂程式開發的來討論 (發表於 2010年4月30日 23:47) 引用回覆
    起碼XDite是個懂程式開發的,他的發言有一定的代表性,之前那篇「吵什麼」真的是吵不知所云……
  • Avatar
    11.  wongfeipau (發表於 2010年5月01日 00:18) 引用回覆
    至少內行人來說比較有說服力
    至於看光前一篇APPLE的發言內容

    稍為有在玩程式的人,應該會有一些一致的看法
    認為APPLE說的挺有道理,但畢竟是單方面回應
    有時說得OVER不OVER,難~

    至於利益關係.這句不用說,也一定是跑不掉
    要不APPLE和ADOBE總不會吃飽沒事做

    都是開公司的,當然很容易是因為利益有抵觸
    使得互相交戰,唉...商場如戰場,親人都一樣
    更可況做生意的!



  • Avatar
    12.  Ric (發表於 2010年5月01日 10:29) 引用回覆
    @edward

    「中介層」本身並沒有絕對的好壞,重點是發展的人。

    第三廠商中介層可以做得很好,甚至作為協助應用程式在系統版本間無痛轉換的重要工具。但同樣也可以做得很爛,底層系統更新後數年都遲遲未更新,讓上面的應用程式完全無法用到新的系統功能。

    不管有多挺 Adobe,Flash 這幾年來一直都在朝向「發胖」的方向發展,卻完全忽略「不同系統的最佳化」,這是不爭的事實。一個已經臃腫到需要用到系統 GPU 繪圖晶片才能順利執行的「網頁外掛程式」,拿到「智慧型手機」上使用,下場會如何,我想應該不難想像吧?

    我同意現在 Flash 亂象、該負最大責任是製作 SWF 的人。但是 Flash 算是一種「易懂難精」的開發平台,你沒有任何辦法禁止這個市場大量製造出「自己能看就好管他別人死活」的垃圾食品。而 Flash 最讓人厭惡的一點就是,他是內容呈現的一部分,你完全沒辦法控制「只顯示部分內容」。不是全要,就是全無,中間沒有給你任何的選擇空間。

    這些問題不是不能解決;Flash 本身可以強制製作者在各種不同模擬平台上運作,Flash 也可以預設在所有影片中都要放置一個「低解析度」track,讓這些低功率的機器使用。重點是:你 Adobe 要出面解決這個問題。

    從另一個角度想,Jobs 公開找 Adobe 踢館未嘗不是一件好事。Adobe 近年來真的有點在原地踏步的狀況。別的不提,連最基本的要求,64-bit 版本 Flash player,for Windows/Mac,都遲遲未能提供。如果沒有人上門叫陣,想要等到 Adobe 重視「非頂級電腦使用者」這塊市場,我看是遙遙無期。
  • Avatar
    13.  蘋果封閉 (發表於 2010年5月01日 15:14) 引用回覆
    兩個蘋果迷在自hi,
    這篇文章真是欠缺公正性!
  • 無敵小恩恩
    14.  無敵小恩恩 (發表於 2010年5月01日 15:27) 引用回覆
    其實我沒有很high,只是單純討厭Flash而已XD
  • Avatar
    15.  evenwu (發表於 2010年5月01日 16:35) 引用回覆
    我很high...
  • Avatar
    16.  maxweipo (發表於 2010年5月01日 17:28) 引用回覆
    但是一個討厭flash的人 和一個程式設計師的對話就可以叫專家怎麼看?
    難怪那些報紙所謂的專家言論跟沒有差不多
  • 無敵小恩恩
    17.  無敵小恩恩 (發表於 2010年5月01日 17:49) 引用回覆
    我也不愛下專家這種標,但你知道的XD
  • 董福興
    18.  董福興 (發表於 2010年5月01日 19:35) 引用回覆
    也許Jobs說Adobe懶是對的。早先Adobe以Flash Lite( http://bit.ly/9yM15F )跨足手機平台,根據Wired報導( http://bit.ly/b2pvN2 ),兩名主導Flash Lite的前Adobe工程師表示,iPhone一推出,行動團隊中注意到觸控應用,也想在iPhone上做些事情,但是管理階層不為所動。直到去年Max2009才說要以Flash 10.1跨足智慧型手機領域。要是Adobe早點注意到iPhone進行研發,應該就不會造成今天這樣的結果。
  • Avatar
    19.  大輸來開講 (發表於 2010年5月02日 02:46) 引用回覆
    我不太關心蘋果,所以,當我看到蘋果相關的報導,不管是捧他,還是罵他,都沒有什麼感覺,當然,也就不會生氣。
    所以,對所謂「幫蘋果說話」的內容這麼生氣,是因為愛之深責之切呢?還是根蘋果有利益上的衝突呢?
    雖然說,我不太關心蘋果,但這篇文章我還是看了XD,因為,看到這麼多回應,感覺這話題一定很熱門。

    報導就是要引人注意,偶爾讓人唸唸也沒關係,這篇文章----成功。
  • Avatar
    20.  Eric00886 (發表於 2010年5月03日 15:56) 引用回覆
    有點搞笑....單拿『framework』,這不就是一個不直接使用平台端API的設計? 現在有多少家手機不採framework設計? 還專家~ 太外行了吧。

發表回應/ 至 T17 討論

登入會員可免填名稱、Email資料)