C++ 之父:从电饭煲到火箭,都在使用我创造的编程语言丨编程人物录

2019 年 11 月 3 日 InfoQ

作者丨小智

Bjarne Stroustrup 是摩根士丹利信息技术部门董事总经理、哥伦比亚大学计算机科学系客座教授,美国国家工程学会会员,IEEE、ACM、CHM 资深会员。同时也是 C++ 之父。

贝尔实验室的过往

20 世纪 70 年代到 90 年代,贝尔实验室的计算机科学研究中心是世界上最伟大的实践计算机科学和理论的地方,没有之一。

Bjarne 即将从剑桥博士毕业的时候,给贝尔实验室打了个电话询问是否有工作机会。贝尔实验室当时并没有空缺的职位,但是欢迎 Bjarne 去展示自己的作品。最终,经过几天的展示和面试,他还是成功获得了一份贝尔实验室的工作。

贝尔实验室计算机科学研究中心

贝尔实验室自 1925 年建立以来就有着辉煌的历史,一共获得两万五千多项专利,荣获 8 次诺贝尔奖。贝尔实验室的计算机科学研究中心,聚集着一批计算机科学界的精英,这些人非常聪明、知识渊博而富有创造力,许多人也是非常好的倾听者,在开发新系统提出新想法方面非常有帮助,不管你想了解什么,你都可以在附近找到专家。

该中心位于默里山,拥有 1000 多名来自不同科学和工程领域的博士。研究人员被给予了很大的自由来选择要做什么,这比其他地方的情况要好得多,无论是过去还是现在。你所需要做的就是最终创造出一些伟大的东西。

也就是在这里,Bjarne 创造了著名的计算机编程语言——C++。

C++ 的那些事儿

当有人问起:有没有那么一瞬间,你觉得 C++ 可能会改变软件 / 硬件行业的游戏规则时。Bjarne 很坦率地说:没有,因为我一直在忙于开发并使用 C++。

但他也坦言,还是会有那么一两个比较接近的瞬间。比如说 1989 年,当 IBM 和惠普的代表出现在贝尔实验室,坚持说“您真的应该在 ANSI(美国国家标准学会)委员会上标准化 C++”时。再比如说,当 ACM(国际计算机学会)的编程语言历史协会建议他写一篇 C++ 的论文时。他才感知到了 C++ 对软件开发带来的不同,但即便如此,他表示自己仍旧低估了 C++ 的影响和它所支撑的编程技术。

当被问及,如果有时间机器可以让他回到最初创建 C++ 的时候,他最想改变的东西是什么?Bjarne 笑着说,现在的他不会比创建 C++ 时的那个他更了解那个时代,他做的任何改动可能都无法适应那个内存只有 1MB 的工作环境,也没法编译到早期的 640MB Windows 电脑上。

最令他感到惊讶的是,C++ 的应用范围之广:从电饭煲到太空火箭,放眼望去,汽车、电影、游戏、医药、金融、计算机、农业等等行业都有使用 C++。在他看来,C++ 在科学领域的应用是最令人满意的:人类基因组计划、欧洲核子研究中心和其他地方的基础物理研究还有火星探测器,C++ 都做出了贡献,无论这个贡献是微小的还是宏大的,给他的感觉都很好。

作为一门有着 30 多年历史的老牌语言,C++ 总会被问及一些尖锐的问题,都 9102 年了,还有必要学 C++ 吗?Bjarne 非常坦率地回答了这个问题,当然有必要。

C++ 是最有用的语言之一,Bjarne 认为这是最重要的一个原因之一。想要成为计算机界不管是工业界还是学术界的专业人士,只会一门编程语言通常都是不够的,对于需要性能和可靠性的工作,C++ 是一个很好的选择。

从另一个角度看,一个老牌语言经过这么多年的发展,远没有新兴语言那么大力度的市场营销,但 C++ 却在各个行业得到了充分的使用,这本身就说明了一些问题。

Bjarne 认为,学习 C++ 最好的原因是它可以让你深入了解各种编程和设计技术,这些技术适用于各种语言,一窍通百窍通。

给后辈的一些话

Bjarne 说,编程可以很有趣,但它并不全是有趣和游戏。他认为,我们的整个现代文明都是依赖于好的软件上的。在现在这个时代,不管你对什么感兴趣,文学、化学、历史、火箭、医学、农业、工业,编程都可以发挥它的作用。

年轻人可能最终将在某一个领域做出重大的贡献,但要做到这一点,他必须了解软件开发的领域、工具和技术。一定要学习基础知识,比如数据结构和机器是如何工作的。

面对技术的发展,不要不知所措,不要以为几周后你就能成为专家。想想学会说一门自然语言需要多长时间,成为一名优秀的运动员需要多长时间,学会演奏一种让你家人以外的人愿意听的乐器需要多长时间。

想想你在达到这种境界的过程中会有多少乐趣,你可能会交到多少朋友。一些最优秀的人都在学编程、使用软件。

作者介绍

小智,InfoQ 编辑。关注架构、开源、泛互联网科技领域,个人公众号小智的互联网观察,个人微信:ryantz

原文链接:C++ 之父:从电饭煲到火箭,都在使用我创造的编程语言丨编程人物录

点个在看少个 bug 👇

登录查看更多
0

相关内容

计算机科学(Computer Science, CS)是系统性研究信息与计算的理论基础以及它们在计算机系统中如何实现与应用的实用技术的学科。 它通常被形容为对那些创造、描述以及转换信息的算法处理的系统研究。计算机科学包含很多分支领域;其中一些,比如计算机图形学强调特定结果的计算,而另外一些,比如计算复杂性理论是学习计算问题的性质。还有一些领域专注于挑战怎样实现计算。比如程序设计语言理论学习描述计算的方法,而程序设计是应用特定的程序设计语言解决特定的计算问题,人机交互则是专注于挑战怎样使计算机和计算变得有用、可用,以及随时随地为 所用。 现代计算机科学( Computer Science)包含理论计算机科学和应用计算机科学两大分支。
【2020新书】使用高级C# 提升你的编程技能,412页pdf
专知会员服务
57+阅读 · 2020年6月26日
【实用书】Python技术手册,第三版767页pdf
专知会员服务
234+阅读 · 2020年5月21日
【实用书】Python数据科学从零开始,330页pdf
专知会员服务
141+阅读 · 2020年5月19日
【强化学习】深度强化学习初学者指南
专知会员服务
179+阅读 · 2019年12月14日
说说我的老同事,前端大神程劭非
余晟以为
17+阅读 · 2019年1月14日
各编程领域最好的入门书籍
程序猿
27+阅读 · 2018年7月29日
刚开始学编程?这几款小工具能让你事半功倍
Python 如何快速入门?
大数据技术
11+阅读 · 2018年4月9日
编程和数学基础不佳如何入门人工智能?
算法与数据结构
4+阅读 · 2018年1月14日
教你用Python来玩跳一跳
七月在线实验室
6+阅读 · 2018年1月2日
只需5个月,编程小白也能掌握机器学习
ImportNew
5+阅读 · 2017年12月4日
十五条有用的Golang编程经验
CSDN大数据
5+阅读 · 2017年8月7日
Arxiv
22+阅读 · 2019年11月24日
Multi-Grained Named Entity Recognition
Arxiv
6+阅读 · 2019年6月20日
Knowledge Flow: Improve Upon Your Teachers
Arxiv
5+阅读 · 2019年4月11日
Arxiv
6+阅读 · 2018年2月6日
VIP会员
相关VIP内容
【2020新书】使用高级C# 提升你的编程技能,412页pdf
专知会员服务
57+阅读 · 2020年6月26日
【实用书】Python技术手册,第三版767页pdf
专知会员服务
234+阅读 · 2020年5月21日
【实用书】Python数据科学从零开始,330页pdf
专知会员服务
141+阅读 · 2020年5月19日
【强化学习】深度强化学习初学者指南
专知会员服务
179+阅读 · 2019年12月14日
相关资讯
说说我的老同事,前端大神程劭非
余晟以为
17+阅读 · 2019年1月14日
各编程领域最好的入门书籍
程序猿
27+阅读 · 2018年7月29日
刚开始学编程?这几款小工具能让你事半功倍
Python 如何快速入门?
大数据技术
11+阅读 · 2018年4月9日
编程和数学基础不佳如何入门人工智能?
算法与数据结构
4+阅读 · 2018年1月14日
教你用Python来玩跳一跳
七月在线实验室
6+阅读 · 2018年1月2日
只需5个月,编程小白也能掌握机器学习
ImportNew
5+阅读 · 2017年12月4日
十五条有用的Golang编程经验
CSDN大数据
5+阅读 · 2017年8月7日
Top
微信扫码咨询专知VIP会员