iOS开发者的“祖师爷”去世了:他发明了Objective-C语言



晓查 发自 凹非寺
量子位 报道 | 公众号 QbitAI

  编程语言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。

  

  △ Stepstone公司旧址

  在PPI公司,Cox把当初的OOPC发展成了Objective-C。

  他认为Objective-C将引发一场软件工业革命,因为这种语言创造了“预生产软件组件”(software-IC)市场。

  后面的故事,果粉应该很熟悉了。

  1985年的乔布斯被排挤出苹果公司,创立了NeXT电脑公司。此后,NeXT成为Objective-C的重要客户,其操作系统NeXTSTEP都用上了这种语言来做开发。

  

  虽然乔布斯创立的NeXT在硬件方面未能站住市场,但是在软件方面却大获成功。

  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讣告:https://www.legacy.com/us/obituaries/scnow/name/brad-cox-obituary?pid=197454225

  Objective-C的起源与发展:https://dl.acm.org/doi/10.1145/3386332

    原址:https://www.163.com/dy/article/G11CVPTB0511DSSR.html


0