加载中......
输入验证码,即可复制
微信扫码下载好向圈APP, 登陆后即可进入消息页面查看验证码
只需要3秒时间

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

编程语言Objective-C的发明者Brad Cox前不久在弗吉尼亚州的家中去世,享年76岁。

这位改变苹果的程序员走了,他发明了Objective-C语言-1.jpg

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语言-2.jpg

发明Objective-C语言

20世纪80年代,面向对象编程成为趋势,虽然那时已经有Smalltalk这种OOP语言,但是业内需要一种能够兼容Unix与C环境的OOP语言。

1981年,Cox很快写出了面向对象的预编译器(OOPC),它可以将类似Smalltalk的语法翻译成C语言,这就是Objective-C的前身。

他的领导Tom Love认为,这种面向对象的解决方案很有市场,于是二人一起从公司离职,创建了PPI公司,后来改名为Stepstone

这位改变苹果的程序员走了,他发明了Objective-C语言-3.jpg

△ Stepstone公司旧址

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

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

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

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

这位改变苹果的程序员走了,他发明了Objective-C语言-4.jpg

虽然乔布斯创立的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操作系统的缩写。

这位改变苹果的程序员走了,他发明了Objective-C语言-5.jpg

虽然苹果于2014年推出了Swift语言意图取代之,但Objective-C现在仍是iOS的主要开发语言之一。
轶事

尽管Cox发明了编程语言Objective-C,但他在2019年接受《编程大师》专访时表示,他本人对编程语言不感兴趣,他认为语言只是构建和组合软件各部分的工具。

这位改变苹果的程序员走了,他发明了Objective-C语言-6.jpg

一次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


— 完 —
量子位 QbitAI · 头条号签约
关注我们,第一时间获知前沿科技动态
程序员圈
24676 查看 15 0 反对

说说我的看法高级模式

您需要登录后才可以回帖 登录|立即注册

  • 柴小军0324

    2021-2-23 14:43:18 使用道具

    来自: 北京来自: 北京来自: 北京来自: 北京
    我也用了4年OC,但现在已经转行了,看到这文章想起了自己当初写代码的点点滴滴。时光不再,努力前行,加油,各位程序员们。
  • life永恒的Love

    2021-2-24 12:27:37 使用道具

    来自: 北京朝阳来自: 北京朝阳来自: 北京朝阳来自: 北京朝阳
    对编程语言不感兴趣还发明了objectC,可见美国编程语言的发达。
  • wrg4444

    2021-2-24 20:04:19 使用道具

    来自: 北京来自: 北京来自: 北京来自: 北京
    在中国他应该在35岁失业,然后转行做早餐,宵夜。没机会写OC
  • al019

    2021-2-25 07:31:57 使用道具

    来自: 北京来自: 北京来自: 北京来自: 北京
    我写了快5年oc了
  • zhangwanxi

    2021-2-25 16:34:25 使用道具

    来自: 中国来自: 中国来自: 中国来自: 中国
    写了1年多的oc,实在受不了,赶紧换了swift,再后来又是vue和小程序,最后转到了java
  • 伊藤双二

    2021-2-26 15:48:05 使用道具

    来自: 北京来自: 北京来自: 北京来自: 北京
    靠,今天刚百度搜了这些程序语言的创始人……晚上头条就推出来这个
  • _天潮丶天

    2021-2-27 03:56:37 使用道具

    来自: 北京邮电大学来自: 北京邮电大学来自: 北京邮电大学来自: 北京邮电大学
    刚学oc时觉得语法很怪,非常别扭,但用熟以后就一个字:爽,运行效率和c一样,开发速度和python一样。
  • 634

    2021-2-28 04:19:27 使用道具

    来自: 中国来自: 中国来自: 中国来自: 中国
    曾经也是个OC程序员,缅怀下。
  • xingxingluo

    2021-2-28 22:13:04 使用道具

    来自: 北京来自: 北京来自: 北京来自: 北京
    3年iOS转JAVA转电商的缅怀下,吃了几年It饭
  • al017

    2021-3-1 20:10:13 使用道具

    来自: 北京来自: 北京来自: 北京来自: 北京
    编程语言只是一种工具,这老爷子说的对呀,只要你熟练使用C++编程,理解了面向对象的思想,学习其他语言编程都是一星期的事儿,真正困难的不是语言本身,而是他们背后的库和框架。

相关阅读