这个寒冷的季节因你的关注而变得温暖

很多人在听到“C语言”的时候都会对我说,“哇,虽然不懂,但是听起来就很厉害的样子。”

在很多外行人的眼里,对C语言都是这种不明觉厉的态度。那这个东西到底是被怎样的人创造出来的呢?

这个人就是丹尼斯·里奇,全名丹尼斯·麦卡利斯泰尔·里奇。又被称为C语言之父,UNIX之父。

丹尼斯·里奇被世人尊称为“无形之王的C语言之父”,是计算机及网络技术的奠定者,曾担任朗讯科技公司贝尔实验室下属的计算机科学研究中心系统软件研究部的主任一职。是为乔布斯等一众IT巨擘提供肩膀的巨人。2011年10月与乔布斯相继离世,却远未像乔布斯那样得到全球的追捧和悼念。1978年与布莱恩·科尔尼干(Brian W. Kernighan)一起出版了名著《C程序设计语言》,现在此书已翻译成多种语言,成为C语言方面最权威的教材之一。想了解C语言的同学们可以买来看一看。

那刚刚提到丹尼斯所在的贝尔实验室的名字虽然听起来很是普通,但是它的内在绝对能够吓你一跳。

美国贝尔实验室是晶体管、激光器、太阳能电池、发光二极管、数字交换机、通信卫星、电子数字计算机、蜂窝移动通信设备、长途电视传送、仿真语言、有声电影、立体声录音,以及通信网等许多重大发明的诞生地。自1925年以来,贝尔实验室共获得两万五千多项专利,现在,平均每个工作日获得三项多专利。贝尔实验室的使命是为客户创造、生产和提供富有创新性的技术,这些技术使朗讯科技(Lucent Technologies)公司在通信系统、产品、元件和网络软件方面处于全球领先地位。一共获得8项诺贝尔奖(其中7项物理学奖,1项化学奖)。

——来自百科对贝尔实验室的介绍

是不是每一项发明都足以改变人类的文明进程呢?


肯·汤普逊(左)和丹尼斯·里奇(右)

1983年丹尼斯·里奇与肯·汤普逊一起获得了图灵奖。理由是他们“研究发展了通用的操作系统理论,尤其是实现了UNIX操作系统”。到了1999年,两人因为发展C语言和Unix操作系统一起获得了美国国家技术奖章。

都是大佬啊,奉上我的膝盖_(:3 」∠)_ -••*'``*:.。. .。.:*•゜゜•*

在里奇的成长历程中,可以说影响他最大的人就是这位同为UNIX发明人的挚友——肯·汤普逊。

曾经有人问过丹尼斯,他的偶像是谁,他回答说:“我不是在英雄熏陶下成长起来的。很显然,对我职业生涯影响最大的人物是肯·汤普逊。”

哈哈,在这里吐槽一句,发现很多杰出的人的背后都以一名好基友支撑,最出名的莫过于马克思与恩格斯了吧~


丹尼斯·里奇与肯·汤普逊两人发展了C语言,同时发展了Unix操作系统,这在电脑工业史上占有重要的席位。

至今为止C语言在发展软件和操作系统时依然是一个非常常用的电脑语言,它对许多现代的编程语言如C++、C#、Objective-C、Java和JavaScript拥有极大的影响。

突然想起来身边有很多学文科的朋友常常会把C语言和Java当成一种东西(没有抹黑学文科的朋友啦~),但是它们之间有很多的不一样,那C语言和Java的区别到底有哪些呢?

最重要的就是语法的不同。

单文件的编译时间java比C语言快;

C语言可以直接操作内存,java不能直接操作;

C语言可以封装动态库,java不行;

C语言的代码不容易跨平台,java的代码容易跨平台;

C语言有指针,java没有指针(这个指针不是我们用的手表上的那种指针而是指指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址);

C语言可以直接操作串口,java需要第三方jar包支持;

C语言的线程更加灵活,java的线程都已经封装好了;

C语言做单独功能,可以增加效率,java适用做web应用开发;

unix是C语言编写的,java也是C语言编写的(是不是感觉C语言超厉害呢);

JAVA做web开发的时候,已经有很多成型的框架技术,C语言很少,且需要处理底层内容,对应不熟悉计算机原理的开发者难度很大;

JAVA的开源包太多了,C语言也有但是偏少,而且面向某个业务应用领域的框架没java多。

将C语言结合java语言一起开发,这种操作那可就碉堡了,那很多问题就可以迎刃而解了。


另外不得不说的是,自从开始写程序,我的发际线就一天不如一天了。

果真是如一拳里所说,

“我变强了,也变秃了。”

END


最后修改:2018 年 02月 06日 01:27:19

文章声明:本文系转载或收集整理于互联网,如有侵权请邮件告知本站删除。
本文标题:无形之王的C语言之父 - 丹尼斯·里奇
本文标签:c语言,里奇,Linux,Unix
如果觉得本篇文章对你有用,请随意赞赏;赞赏将用于服务器、域名开支