程式語言Objective-C的發明者Brad Cox前不久在維吉尼亞州的家中去世,享年76歲。
Brad Cox是著名的電腦科學家,他發明的物件導向程式語言(OOP)語言Objective-C後來成為了蘋果OS X和iOS裝置App的主要開發語言。
此外,他還在軟體工程、軟體組件等方面做出過重要貢獻。
Brad Cox本人也衷心於教育,1991年他出版了《物件導向程式設計:一種進化方法》一書,還致力於透過網際網路開發早期的線上課程。
最後,考克斯博士回到了他最初的神經網路研究,致力於將機器學習和數據科學應用於網路安全。
早年經歷
Brad Cox於1944年出生於喬治亞州的班寧堡,他在傅爾曼大學主修有機化學與數學,之後又在芝加哥大學獲得數學生物學博士學位。
在芝加哥大學那裡,Cox從事神經網路的早期研究。1970年,他編寫了一個PDP-8程式來模擬神經元簇,並在《行為研究期刊》上發表了相關論文。
畢業後的Cox進入國際電話電報公司(ITT)工作,後來又加入了Schlumbeger Doll研究實驗室,這裡成為他創建Objective-C語言的起點。
發明Objective-C語言
20世紀80年代,物件導向程式設計成為趨勢,雖然那時已經有Smalltalk這種OOP語言,但是業內需要一種能夠相容Unix與C環境的OOP語言。
1981年,Cox很快寫出了物件導向的預編譯器(OOPC),它可以將類似Smalltalk的語法翻譯成C語言,這就是Objective-C的前身。
他的領導Tom Love認為,這種物件導向的解決方案很有市場,於是二人一起從公司離職,創建了PPI公司,後來改名為Stepstone。
在PPI公司,Cox把當初的OOPC發展成了Objective-C。
他認為Objective-C將引發一場軟體工業革命,因為這種語言創造了「預生產軟體組件」(software-IC)市場。
後面的故事,果粉應該很熟悉了。
1985年的賈伯斯被排擠出蘋果公司,創立了NeXT電腦公司。此後,NeXT成為Objective-C的重要客戶,其作業系統NeXTSTEP都使用這種語言來做開發。
1994年,Cox創立的Stepstone倒閉,Objective-C的所有權利都被NeXT收購。
1997年,NeXT被蘋果收購,賈伯斯以這種方式重返蘋果,NeXT的軟體系統被安裝在Macintosh電腦上,並發展成為OS X作業系統。
Objective-C也順理成章地成為了蘋果電腦OS X系統的開發語言,後來又隨著2007年iPhone的橫空出世,被越來越多的開發者使用。
時至今日,我們仍能在Objective-C語言中看到Brad Cox的痕跡:變量類型的前綴NS就是當年NeXTSTEP作業系統的縮寫。
雖然蘋果於2014年推出了Swift語言意圖取代之,但Objective-C現在仍是iOS的主要開發語言之一。
軼事
儘管Cox發明了程式語言Objective-C,但他在2019年接受《程式設計大師》專訪時表示,他本人對程式語言不感興趣,他認為語言只是構建和組合軟體各部分的工具。
一次Brad Cox與妻子在旅行過程中遇到一對德國夫婦,與他們交談,發現對方是一名程式設計師。Cox表示自己也是程式設計師,然後雙方開始了以下對話:
「你是做什麼的?」
「我發明了Objective-C語言。」
「不,那是Brad Cox做的。」
「我就是Brad Cox啊!」
這樣有趣的事例頻繁出現在極具幽默感的Brad Cox 的身邊。除了愛好旅遊和潛水,Brad Cox 還十分熱愛音樂,會彈鋼琴和吉他,甚至早年間他還組過樂隊,主要演奏藍草音樂(鄉村音樂的一個分支)。
加入電腦王Facebook粉絲團