開發(fā)者的心聲 分別寫給喬布斯和佩奇的信
大家期待的5月份 Google I/O 開發(fā)者大會 Android 3.1 冰激凌圣代(Ice Cream Sundae)和六月蘋果的 iOS 5又將掀起智能手機的新浪潮,但是從最近 PlayBook 的***輪評測來看,真正重要的也許不是你設備的硬件有多強悍,而是支持你系統(tǒng)的各種應用。這也就是開發(fā)者們所要關(guān)注的。
截止目前,蘋果的 App Store 和 Android 的 Market 兩大應用商店的應用數(shù)量分別已突破35萬和25萬,但應用數(shù)量的增長是否意味著這兩大系統(tǒng)平臺得到了應用開發(fā)者的認可?或者說這兩大系統(tǒng)的架構(gòu)真的有利于開發(fā)者快速便捷的開發(fā)出好的應用軟件?
這里有兩封來自國外應用開發(fā)者的信,分別寫給蘋果的喬布斯和福斯托以及谷歌的佩奇和羅賓,我簡單的翻譯一下,供大家參考:
寫給 史蒂夫•喬布斯 和 斯科特•福斯托 的信
Steve Jobs (and Scott Forstall)
One Infinite Loop
Cupertino, CA
USA 95014
親愛的史蒂夫:
請給我們垃圾回收機制(Garbage Collection),我知道這并不輝煌,我知道用戶是看不出哪里有區(qū)別的(除非應用程序崩潰,或者他們費勁兒升級的時候),但是這卻與 iOS 的 SDK密切相關(guān),包括編輯器,庫還有Objective-C。它們本身是很棒的,它的內(nèi)存管理是從上世紀80年代就有的。最近一同事在談到他***次看到 iOS 發(fā)展的時候驕傲的說:“等一下,十年后會是什么樣?”那感覺就像開著一輛剎車由拉達(Lada)制造的法拉利。
內(nèi)存管理機制,淺顯的說,就是一個設備在它的應用程序無限的虛擬內(nèi)存需求中分享自己有限的物理內(nèi)存。每個現(xiàn)代的開發(fā)環(huán)境都有一種自助服務-那個干最多粗活的“垃圾回收機制”,但仍然會遇到存儲問題,相信我,但至少目前你不必刻意去分配和釋放你想使用的每塊內(nèi)存,免得引出既難發(fā)現(xiàn)又難修復的 Bug。
有些人稱垃圾回收機制是為了弱者而不是 Apple,OS X 已經(jīng)有這個很多年了。也有另一些認為,在有限資源的移動設備上那是無法工作的,或者說至少在 Android 和 WebOS 出現(xiàn)之前。因為 Android 和 WebOS 從產(chǎn)生時就實現(xiàn)了垃圾回收。
這或許有點兒像多任務操作的的爭論。在2009年,人們就問:“為什么 iPhone 不能像 Android那樣多任務操作?”果粉們就辯解說多任務不好,是惡魔!到2010年,蘋果宣布:“ iOS 4.0支持多任務!”果粉們又說我們一直喜歡多任務!當然,真正的純粹者還是會指出那時的iOS并不像 Android一樣有著真正的多任務。
親愛的史蒂夫,請給我們像 Android 一樣真正的多任務操作。
親愛的史蒂夫,請盡可能在非Mac的其他計算機上實現(xiàn) iOS 應用的開發(fā)。不僅僅為我自己,也為了你,因為在接下來的十年里會有三十億發(fā)展中國家的人民購買智能手機,他們想要那些與他們文化和生活方式貼近的應用軟件,即那些來自他們文化和生活方式中的人們開發(fā)的應用。而且,如果你是一個來自貧窮但新興的市場環(huán)境中的開發(fā)者,你愿意花200美元開始寫Android 的應用,還是為了開發(fā)iOS應用花1000美元,而那僅僅是個開始。實際上,這個問題我已經(jīng)說了很多年,但是您卻從未聽取過,史蒂夫。這真是一個遺憾,因為我也希望你精巧高貴的 OS/SDK 也能在世界剩余的那部分取得勝利。
那也就是說,我對您全球稱霸的做法表示懷疑。
親愛的史蒂夫,
我真的是不想抱怨App Store,但是發(fā)布一個Android應用只需要5分鐘,在這里卻花費了5天。但是如果因為企業(yè)文化的不同,我也是能夠尊重的(如果您能縮減到1天那也是很不錯的)
您那深鎖的封閉系統(tǒng),開發(fā)人員幾乎根本觸碰不到,但您能開放例如藍牙的部分功能嗎?要知道藍牙在被控制的情況下用于游戲是多么酷的。但是擺在首位的問題是,讓我們用藍牙給其他設備傳輸數(shù)據(jù)如何?
Thanks in advance,
Jon.
PS I’d really settle for just the garbage collection.#p#
寫給 拉里•佩奇 和 安迪•羅賓 的信
Larry Page (and Andy Rubin)
1600 Amphitheatre Parkway
Mountain View, CA
USA 94043
親愛的 拉里,
我們需要談談。
不要誤會我,總體來說我愛Android勝過 iOS。誠然,我們得用Java去寫你的應用,雖然那不是我喜歡的語言。相對于蘋果給我們的那成熟封閉的開發(fā)環(huán)境,包括debugger等等在內(nèi)的開發(fā)工具是非常粗糙的。我可以忍受那些怪異,盡管如此,對于開發(fā)者最重要的也是開發(fā)者夢想著的環(huán)境應該是—強大,靈活和開放的。
但是我們需要討論一下分裂問題。
設備的參差不齊真的糟糕透了。開發(fā)出在不同屏幕分辨率的手機下都能順暢運行的Android應用是件很好的事,卻令開發(fā)者苦惱不堪。Android 的UI實現(xiàn)已經(jīng)成為了一種混亂和復雜的 Voodoo。這就是為什么有很少的應用能在Android手機上運行的和iPhone一樣的流暢。從無法完全貼合在一起的樂高積木中,是出不來藝術(shù)品的。而這種情況可能要變得更糟,如果 Android 3.1 同時支持手機,平板甚至TV。所以,
親愛的 拉里,
請讓開發(fā)出有吸引力和受歡迎的Android應用變得簡單。是的,如果您跳過一百個圈那在今天是可能的,但是如果把數(shù)字削減到10個呢?
相對于真正的分裂問題,這只是個小抱怨。我指的是開放系統(tǒng),還有運營商。
當蘋果發(fā)布新的操作系統(tǒng),它的每一個蘋果設備都可以立即得到支持。為什么Android不能那樣?因為有運營商在前面擋著。他們給設備加載有刺激性卻無用的東西,用他們自己的劣勢版本替換掉重要的原生架構(gòu)(殘缺的藍牙協(xié)議棧等),而且永遠在新設備中使用新系統(tǒng)
運營商為何要這樣做?就像塔利班一樣,他們討厭我們的自由。因此,通過他們自己的平臺版本分布圖,33%的Android仍然運行著Android 2.1(15個月前發(fā)布的)或者更老的系統(tǒng)版本。所以,我們開發(fā)者仍然不情愿去寫帶有Android 2.2 新功能的應用,更沒想過2.3或者3.1。這對我們不好,對您也不好。
Dear Larry,
Please set your people free.
Thanks in advance,
Jon.
PS You totally should have gone with that unlocked $99 Nexus One plan.
【編輯推薦】