Xcode是如何誕生的?


大家都知道,Xcode是iOS、macOS程序的唯一開發工具,其強大的功能讓人嘆為觀止。那么,大家知道Xcode是如何誕生的呢?

1981年, 一個名叫Jean-Marie Hullot的人獲得巴黎第十一大學的計算機科學博士學位后,開始了在法國國家信息與自動化研究所(INRIA)的研究生活。

早在Jean-Marie Hullot還在學校的時候,Xerox PARC(施樂帕洛阿爾托研究中心)的 Alan Kay、Dan Ingalls、Ted Kaehler和Adele Goldberg等人,從1969年就開始研發一款面向對象的編程語言Smalltalk,並於1980年正式公布。雖然當時的機器跑得非常的慢,但Smalltalk先進的思想對其他眾多的程序設計語言的產生起到了極大的推動作用,對計算機工業界的發展也產生了非常深遠的影響。

Smalltalk的發布給Jean-Marie Hullot的心靈帶來了巨大的震撼,他毫不猶豫地成為了面向對象編程模式的早期粉絲。那時,Jean-Marie Hullot使用早期的Macintosh電腦進行開發,但他很快發現,雖然Mac的用戶界面做得不錯,但開發程序實在是很糟糕。因為每次開發人員需要一個窗口或者菜單,都要從零開始構建。

於是乎,Jean-Marie Hullot開始動腦筋改進Mac編寫用戶程序難的現狀。他開發了一個這樣的程序:一側的工具條是類似菜單這樣的大量可重用的對象,而另一側則是程序員想構建的用戶程序界面。只要把工具條上的工具拖放到程序界面中,那么類似“打開”、“打印”等相關的功能,就可以被添加到用戶界面中。實際上,這個程序是最早的一批能通過鼠標把控件拖入界面設計窗口實現相應功能的商業程序,是用戶界面設計軟件的先驅。這個跨時代的發明被稱作SOS,用 Lisp語言編寫的。

有了這么厲害的東西,Hullot意識到如果他只在研究所窩着,那只能很少的人享受這一成果,而如果他把這個工具公開,那對所有的開發人員來說,都是一大福音。

經過不斷努力,Hullot找到了一個值得推銷自己發明的好地方——劍橋的蘋果大學聯盟(Apple University Consortium)。這個蘋果和大學合作的組織看到 Hullot的創作后反響很好,就推薦他去見時任蘋果開發研究院主任Jean-Louis Gassee。后者見到SOS后也認為這是個好東西,便說服他去美國闖一闖。

不過當Jean-Marie Hullot來到美國加州蘋果總部時,他並沒有留在那兒,而是找到他用來寫SOS的Lisp解釋器的生產商,也就是軟件公司ExperTelligence,來推銷他的SOS。很巧的是,當時的ExperTelligence正在尋找合作商賣自已的 Lisp,而Hullot也在找合作商賣自已的SOS,兩者一拍即合,隨即打電話給NeXT,共同推銷自家的產品。

絕頂聰明的NeXT的創始人Steve Jobs早就看中了SOS,但卻對ExperTelligence的Lisp一點興趣都沒有。他以三顧茅廬般的熱情,將Jean-Marie Hullot招致麾下。Jean-Marie最終在 NeXT 整整待了十年。在NeXT工作期間,他使用Objective-C和NeXTSTEP框架重寫了SOS,命名為Interface Builder。由此,Interface Builder成為NeXT集成開發環境Project Builder的標准套件之一。

Interface Builder和SOS一樣,提供了一個工具箱,包含一系列用戶控件對象。工具箱並不是官方定死的,而是可以任意擴展的。開發者只要把控件拖入項目文件就能完成用戶界面設計,節省了幾乎所有和控件放置有關的代碼。同時,開發者拖拽鼠標,將控件可提供的動作(IBAction)和另一個對象的接口(IBOutlet)連在一起,則建立了一個綁定。這樣,一旦動作被激發,接口中相應的方法則會被執行。所以,大量對象關聯的代碼也能被省去。

NeXT被Apple收購后,蘋果把下一代操作系統建立在NeXTSTEP的基礎上。Objective-C和Cocoa被作為主要框架,而Interface Builder和Project Builder也因此受到重用。值得一提得是,蘋果發布的首個iPhone SDK的Cocoa Touch界面,是用Interface Builder設計的。

Jean-Marie Hullot是在NeXT被收購時進入蘋果的,Steve Jobs令他率領在法國的一個小團隊,秘密為Mac OS X 10.2開發一個辦公軟件iCal。最后,在iCal小組功成名就的Jean-Marie Hullot榮升蘋果軟件開發部首席技術官。

Project Builder在Mac OS X 10.3時被重命名為現在大家所熟知的Xcode。長期以來,Xcode環境和Interface Builder是兩個獨立工作但相互有聯系的程序,而2010年發布的Xcode 4預覽版中,Xcode和Interface Builder合二為一,成為一個一體化的編程環境。

“千里馬常有,而伯樂不常有”,Jean-Marie Hullot的經歷驗證了這句古話。正是在“千里馬”和“伯樂”的共同努力之下,才有了今天的Xcode。感謝喬幫主和大神Hullot為我們弄出了這樣一個卓越的開發工具。


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
  © 2014-2022 ITdaan.com 联系我们: