写点什么

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:475490
用户头像
小智 让所有人认同的文字称不上表达

发布了 410 篇内容, 共 409.1 次阅读, 收获喜欢 1986 次。

关注

评论

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

SpringCloud 网关实现线程池异步批量保存请求日志

Java你猿哥

spring Spring Cloud Java工程师 日志表

4月22日,云数据库技术沙龙【杭州站】

NineData

MySQL 数据库 开发者 Clickhouse 沙龙预告

聊聊简单又不简单的图上多跳过滤查询

华为云开发者联盟

大数据 后端 华为云 华为云开发者联盟 企业号 4 月 PK 榜

安全测试前置实践2-安全渗透测试

京东科技开发者

测试 安全测试 功能测试 网络安全渗透测试 企业号 4 月 PK 榜

横扫一线大厂面试的高并发笔记到底有多硬核?

小小怪下士

Java 程序员 后端 高并发 java面试

跟随项曙明走进中兴通讯,探索企业开源风险治理优秀实践

开源雨林

开源治理 中兴通讯

私有化视频会议系统, WorkPlus Meet助力企业 “面对面”安全开会!

BeeWorks

未来已来,OpenHarmony 3.2 Release发布,迈入发展新阶段

OpenHarmony开发者

OpenHarmony

什么是接口定义? 接口定义的概念和用途详解

Apifox

前端 接口 后端 API 接口定义

技术不行还说Java卷!靠468页SpringBoot企业级项目实战成功逆袭

Java 微服务 Spring Boot 框架

使用Python实现一个简单的垃圾邮件分类器

海拥(haiyong.site)

三周年连更

阿里P8面试官让我吃透这份10W字Java面试题,终于拿下Java高级岗Offer

Java java面试 Java八股文 Java面试题 Java面试八股文

Redis分布式锁一定注意两个坑

Java redis 分布式锁

一文解读基于PaddleSeg的钢筋长度超限监控方案

飞桨PaddlePaddle

人工智能 图像识别 飞桨

关于Blender你想了解的都在这里

Finovy Cloud

blender 3D软件

Kubernetes 中容器跨主机网络是怎么样的?

Java Kubernetes 云原生

SpringCloud 网关实现线程池异步批量保存请求日志

Java Spring Cloud 网关设计

Redis源码之SDS简单动态字符串

Java你猿哥

Java redis ssm Java工程师

Spring源码探索-核心原理下(AOP、MVC)

Java你猿哥

spring aop Spring MVC

解密HTTP协议:探索其组成部分与工作原理

Java 计算机网络 网络协议 HTTP

cad看图:MiniCAD 中文版

真大的脸盆

Mac Mac 软件 cad cad看图

分享:CUDB for OceanBase分布式数据库产品规模应用

OceanBase 数据库

数据库 oceanbase

分享:作业帮在多云环境下的高可用双活架构优化实践

OceanBase 数据库

数据库 oceanbase

京东技术专家首推:微服务架构深度解析,GitHub星标120K

Java你猿哥

数据库 架构 微服务 ssm Java微服务

基于IM的企业移动应用平台,支持企业定制化

BeeWorks

3000字13张图详细介绍RAID0、1、5、6、10、50、60,非常值得收藏!

wljslmz

raid 存储技术 三周年连更

硬核!互联网资深大佬手码高并发编程速成笔记(2023版)限时开源

Java你猿哥

性能优化 系统架构 ssm 高并发 Java高并发

ChatGPT背后的AI背景、技术门道和商业应用(万字长文,建议收藏)

京东科技开发者

人工智能 AI ChatGPT 人工智能ChatGPT 吗? 企业号 4 月 PK 榜

数据解析NFT Q1市场表现:NFT生态正向Polygon聚拢,蓝筹项目"保值"难

NFT Research

数据分析 NFT

投放视频广告时,如何快速与第三方播放器兼容?

HarmonyOS SDK

HMS Core

【机器学习入门与实践】数据挖掘-二手车价格交易预测(含EDA探索、特征工程、特征优化、模型融合等)

汀丶人工智能

人工智能 数据挖掘 机器学习 深度学习 模型融合

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