蘋果盤子有多大? ——從 iOS/OS X 技術細節看蘋果的產品發展方向


編者按:在WWDC 2014上,蘋果放出了Xcode 6 Beta,新增iOS 8模擬器,允許開發者用一套代碼覆蓋所有尺寸與設備。本文作者李樂佳(個人博客),半熟人社交應用某某、圖片社交應用閃閃的聯合創始人,iOS工程師。他從開發者的角度,對此發表了看法。

相信許多開發者、業界人士甚至不少果粉都在6月3日凌晨熬夜看了蘋果2014年WWDC Special Event的現場直播,無論是驚喜還是失望,WWDC作為一場開發者的大會,蘋果終究只是在這次大會上給開發者帶了新iOS與OS X測試版本、新的API與新的開發工具,沒有傳聞的iPhone 6,也沒有Retina Macbook Air。

除去一些新功能的細節,Tim Cook與Craig Federighi帶給大家最重要的一個主題是Continuity。從現場發布會的內容來說,Continuity指的是iOS設備之間、OS X設備之間、iOS設備與OS X設備之間的使用連續性,你可以從一台蘋果設備無縫地跳到另一個設備來完成同一個任務,能完成的任務暫時包括iOS系統內置的電話、短信、郵件等功能。

看了直播或者視頻,你會發現Tim和Craig是在用極其瘋狂的速度串講完了所有Keynote和Demo,絲毫不留給觀眾一些理解笑點的時間,基本喪失了演講應有的戲劇性和節奏感,不是他們不想有,而是要講的內容實在太多。而如果你是一位已經開始研究最新WWDC Session視頻的蘋果註冊開發者,你會發現他們在兩個小時內講的這麼多東西,完全只是冰山一角。

在百餘個WWDC Session中的What's New in Cocoa Touch裡,UIKit(iOS的整個視覺交互框架)的軟件工程師Luke Hiesterman就開門見山地介紹了iOS 8的軟件架構哲學與目標:Adaptivity,指的是iOS框架與開發者代碼在不同設備之間的適用性。

具體地來說,在iOS 8之前,當設備手持方向改變時,開發者需要根據設備的方向來具體判斷,再完成不同的UI實現(長寬變化,如iPad相冊在設備縱向時每行顯示4欄,設備橫向時每行顯示5欄);當同樣的需求面對iPhone與iPad等不一樣的設備,開發者需要根據設備類型來來具體判斷,實現不同的視圖展示內容、方式與動畫(“設置”應用在iPhone上與iPad上的業務邏輯相同,但是展示方式不一樣);面對不同屏幕尺寸的設備,開發者還要分別實現與屏幕對應的字體大小、列表的高度與邊距。但是面對以上這些繁瑣問題,新的iOS 8都給出了統一的接口,讓你用同一套代碼就可以讓同一功能在iPad和iPhone上無縫實現。

而你會問,這又如何?以上的很多功能在iPad第一天出的時候就有考慮了,只是更優化了一些吧,但是,蘋果其實給了更多。安裝了XCode 6 Beta的開發者可能第一時間就發現了,模擬器裡出現了兩個新選項:Resizable iPhone和Resizable iPad,這兩個模擬器能夠讓你在調試的時候,任意指定屏幕寬度或者高度(如圖,同樣的實現是只改了寬高),讓你為同一套代碼調試完全不同的任​​意寬高。前端開發者看到這應該笑了,這不就是Web開發里的響應式設計(Responsive Design)麼。



基於蘋果為開發者提供的這類接口,大家的想像力可以任意發散:Resizable iPad屏幕再變大,即是Apple TV;Resizable iPhone再變大,便是5英寸、6英寸的iPhone;而Resizable iPhone變小,自然就是iWatch。這些iOS 8提供的新接口接口,讓開發者用一套代碼就可以覆蓋所有的尺寸與設備。

基於以上,再回顧一下OS X的一些新功能:你能用Macbook連著你的iPhone打電話、發短信,更能在Macbook上一鍵連接iPhone的3G/4G網絡,即使你的iPhone在客廳而Macbook在書房。不過,蘋果在發布會上的數據也說得很清楚,每10個iOS用戶,才有1個OS X用戶,以上的功能真的那麼有必要、那麼urgent麼?

當然不是,打電話、發短信與共享網絡的Continuity當然完全是為了iWatch準備的!此外,蘋果新推出的高性能遊戲中間層Mental取代了OpenGL ES,讓遊戲畫面的繪製更加靠近GPU,讓遊戲畫質與復雜度又有了極大提升,這只是為了高分辨率iPad麼?當然不止,還有一塊更大的遊戲終端蛋糕——Apple TV!到這裡,你可以試想一下你與你的親人在4K屏幕的Apple TV上Facetime時候的感覺了,iPhone與Apple TV同樣會有超凡的Continuity特性,鬼知​​道那些天才的開發者能把這兩個東西結合出什麼樣的鬼斧神工。

以上,才是這次WWDC最讓人驚嘆的東西。

而至此,你也應該不奇怪為什麼蘋果讓Jonathan Ive同時擔任硬件、軟件的設計總裁,為什麼讓曾經只管OS X軟件開發的Craig Federighi管理OS X和iOS兩個團隊—— Continuity And Adaptivity——現在與未來的所有蘋果設備的無縫結合。

而回到主題,從WWDC的技術細節管中窺豹蘋果的長远战略,你更能理解羅馬不是一天建成的,也更能發現那群聰明人的戰略可不僅僅是建一座羅馬城,而是羅馬帝國。

[本文來自讀者的投稿,不代表36氪立場]


資料來源:36Kr

如果喜歡我們的文章,請即分享到︰

標籤: iOS  OS X  蘋果