写点什么

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

  • 2019-10-30
  • 本文字数:1683 字

    阅读完需:约 6 分钟

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

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


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


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


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


2019-10-30 14:475121
用户头像
小智 让所有人认同的文字称不上表达

发布了 408 篇内容, 共 392.4 次阅读, 收获喜欢 1983 次。

关注

评论

发布
暂无评论
发现更多内容

一个15年ABAP老兵的建议:了解这些基础知识,对ABAP开发有百利而无一害

汪子熙

后台开发 SAP abap Netweaver 7月月更

机器学习-集成学习

AIWeker

机器学习 7月月更

数据结构-顺序表的实现

芒果酱

数据结构 C语言 7月月更

Ansible项目最佳实践

穿过生命散发芬芳

ansible 7月月更

Elephant Swap的LaaS方案迅速崛起,构建全新DeFi2.0协议

鳄鱼视界

Elephant Swap的LaaS方案优势分析,致eToken表现强势

BlockChain先知

在 SAP 云平台上部署和运行 Docker 应用

汪子熙

Docker Kubernetes 云原生 SAP 7月月更

用 React 结合 SAP UI5 Web Components 来开发 SAP Fiori 应用

汪子熙

JavaScript 前端开发 SAP SAP UI5 7月月更

深浅拷贝

Jason199

js 深拷贝 浅拷贝 7月月更

zookeeper-运行期间的leader选举与observer

zarmnosaj

7月月更

谈谈程序员如何提高自己的写作能力

宇宙之一粟

写作 7月月更

Envoy分布式链路追踪

阿泽🧸

envoy 7月月更

Prometheus 2.37.0 新特性

耳东@Erdong

release Prometheus 7月月更

SeekTiger的Okaleido有大动作,生态通证STI会借此爆发?

股市老人

【函数式编程实战】(二)代码的行为参数化传递

小明Java问道之路

函数式接口 Lambda 函数式编程 行为参数化 7月日更

Docker 安装 Nginx 部署前端项目

宁在春

nginx Docker Vue 7月月更

另类加法与走方格的方案数

未见花闻

7月月更

Python干货篇——列表及列表常用内置函数

Java学术趴

7月日更

【刷题记录】17. 电话号码的字母组合

WangNing

7月月更

数据中台建设误区

奔向架构师

数据中台 7月月更

超干货!彻底搞懂单工、半双工、全双工的区别与联系

wljslmz

网络技术 7月月更 通信模式 双工

【愚公系列】2022年07月 Java教学课程 06-常量

愚公搬代码

7月月更

从源码上学习 MockMvc 的使用

安逸的咸鱼

Java 源码 Mock测试框架 7月月更

C#入门系列(二十七) -- LINQ简析

陈言必行

7月月更

附答案 | 最强Python面试题之Python基础题(1)

KEY.L

7月月更

React函数组件详解

恒山其若陋兮

7月月更

Elephant Swap的LaaS方案优势分析,致eToken表现强势

股市老人

云原生(十) | Kubernetes篇之Kubernetes简介

Lansonli

云原生 k8s 7月月更

[ kitex 源码解读 ] Kitex 扩展性设计思路

baiyutang

Go golang 云原生 微服务框架 kitex

C++之父:从电饭煲到火箭,都在使用我创造的编程语言丨编程人物录_文化 & 方法_小智_InfoQ精选文章