本文目录一览:
- 1、C语言是谁发明的?
- 2、c语言入门书籍
- 3、C语言之父——丹尼斯·里奇
C语言是谁发明的?
C语言是“C语言之父”Dennis MacAlistair Ritchie(中文名:丹尼斯·里奇)创造出来的。
C语言是D.M.Ritchie在B语言的基础上创造出来的。C语言的出现经历了以下历程:
在1970年,美国贝尔实验室的 Ken Thompson,以BCPL语言为基础,设计出很简单且很接近硬件的B语言(取BCPL的首字母)。并且他用B语言写了第一个UNIX操作系统。
1972年,美国贝尔实验室的 D.M.Ritchie 在B语言的基础上最终设计出了一种新的语言,他取了BCPL的第二个字母作为这种语言的名字,这就是C语言。
1973年初,C语言的主体完成。Thompson和Ritchie迫不及待地开始用它完全重写了UNIX。直到今天,各种版本的UNIX内核和周边工具仍然使用C语言作为最主要的开发语言,其中还有不少继承Thompson和Ritchie之手的代码。
扩展资料:
丹尼斯·里奇发明出C语言之后,产生了十分强大的社会影响,具体如下:
C语言是使用最广泛的语言之一。C语言的诞生是现代程序语言革命的起点,是程序设计语言发展史中的一个里程碑。
自C语言出现后,以C语言为根基的C++、Java和C#等面向对象语言相继诞生,并在各自领域大获成功。但C语言依旧在系统编程、嵌入式编程等领域占据着统治地位。
C语言,这种最有效、最通用的编程语言,就是丹尼斯·里奇开发的,而这还是他在做另一个项目时的副产品。丹尼斯·里奇还和肯·汤普逊一起开发了Unix操作系统,因此,他还是名副其实的Unix之父。
参考资料来源:百度百科-丹尼斯·里奇
c语言入门书籍
1) 《C语言小白变怪兽》
既适合对计算机一窍不通的小白,也适合有编程基础的读者,还可以用来进阶。
《C语言小白变怪兽》是一套网络教程,发布在C语言中文网,由站长亲自编写,这套教程最大的特点是通俗易懂,深入浅出,既适合小白入门,也适合后期进阶。本人就是读了这套教程以后才对C语言有了天翻地覆的认识,觉得以前学得都是垃圾。。。
这本书至今还在不断更新,我认为这是C语言入门的首选教材,吐血推荐,经典中的经典!!!
2) 《啊哈C语言》
适合对计算机一窍不通的纯小白,有编程基础的读者请忽略。
这本书语言幽默,生动形象,通俗易懂,给人耳目一新的感觉,但是这本书非常浅显,并不深入,所以适合纯小白入门,找到门以后也就扔了。
这本书着重于语言艺术,针对纯小白下足了功夫,小学生坐在马桶上都能学会编程。说实话,我非常欣赏作者的创意和用心,国内像这样写书的少之又少,入门的书就应该是这个样子。
3) 《明解C语言》
适合对计算机一窍不通的纯小白,有编程基础的读者请忽略。
日本人的作品,最大的特点是插图很多,生动有趣,让人一目了然。
其实真正的《明解C语言》一共有三部,分别是《明解C语言·入门篇》《明解C语言·中级篇》《明解C语言·实践篇》,遗憾的是图灵公司目前只翻译了入门篇和中级篇,还没有翻译实践篇。中级篇网上还没有 PDF 下载资源
4) 《C Primer Plus》
适合有编程基础的读者,对计算机一窍不通的纯小白请忽略。
畅销 30 余年的C语言入门经典书籍,至今无人能撼动它的地位,它是最符合C语言标准的书籍,作为一名C语言程序员,不收藏一本都觉得自己很水。
但是对于没有计算机基础的小白,这本书就有点蛋疼了,信息量大,涉及的知识面广,书也比较厚,得有耐心才行。
如果你是纯小白,还是推荐阅读《C语言小白变怪兽》《啊哈C语言》《明解C语言》这几本书,等有了一点C语言基础,知道C语言大概讲了什么东西了,再来读《C Primer Plus》收获就非大了,你会感受到满满的干货。
5) 《C程序设计语言,The C Programming Language》
C语言创始人丹尼斯·里奇(Dennis MacAlistair Ritchie)的著作,和《C Primer Plus》并驾齐驱,很难分出伯仲,这两本书都是一样的优秀,都是C语言程序员必须收藏的。
但是,《C程序设计语言》也不太适合纯小白,还是推荐阅读《C语言小白变怪兽》《啊哈C语言》《明解C语言》这几本书,等有基础了再回来看。
《C程序设计语言》和《C Primer Plus》的难度差不多,信息量也差不多,有很多人纠结读哪一本,我的建议是任选其一即可,或者,看了一本以后,另外一本大概浏览一下。
C语言之父——丹尼斯·里奇
人们对里奇的纪念,远不及对乔布斯铺天盖地的悼念。可是,里奇值得人们那样去做。
还是有人出来说了句公道话。
“史蒂夫·乔布斯去世引发了巨大的反响,这当然合情合理。即便影响实际上更为广泛,丹尼斯却不为公众所知”,罗伯·派克说。罗伯是一名在Google工作的程序员,作为业界的传奇性人物,曾经与里奇在著名的贝尔实验室共事20年。
周三晚间,派克在Google+上发表消息称,在与病魔进行长久的抗争后,里奇于上周末在新泽西的家中溘然长逝。虽然在技术圈内引起大量反响,但在主流媒体上,里奇却没有得到同巨大影响相称的悼念。丹尼斯·里奇作为C语言之父,和贝尔实验室资深研究员肯·汤姆森一起使用C语言开发了Unix,当今世界大量依赖的操作系统,其中包括史蒂夫·乔布斯治下的苹果帝国。
“现下互联网基本都在用这两样东西:C语言和UNIX”,派克对《连线》杂志称,“浏览器是用C语言写的。UNIX的内核——基本上是因特网运作的基础——也是用C写的。Web服务器也是用C语言写的,如果不是的话,那就是用Java或者C++写的,两者都是C语言的派生;要不就是Python或者Ruby,用C语言实现的。然后我几乎敢保证,运行这些程序的网络硬件,是用C语言开发的软件驱动的。”
“几乎很难夸大丹尼斯在信息经济基础设施方面无所不在的影响力。”
他补充说,Windows曾经也是用C语言编写,而UNIX同时也支撑了苹果桌面操作系统Mac OS X,以及iPhone与iPad的操作系统iOS。“如果说乔布斯是台前之王,那里奇就是幕后之王。”MIT电气工程与计算机系教授Martin Rinard如此评价道。Rinard也是计算机科学与人工智能实验室的成员。
“乔布斯的过人之处在于其品位独特,打造人们为之着迷并引人注目的产品。而里奇却擅长于开发一些技术人员使用的基础设施,天天被人们使用却不为人知。”
从B语言到C语言
为了更好开发UNIX,丹尼斯·里奇而发明了C语言。最初的UNIX内核使用汇编语言编写,之后他们很快决定要用一种高级语言,让他们更好的驾驭操作系统中的复杂数据。1970年左右,他们尝试使用Fortran,不过没有达到预期目标。接着,在汤姆森创立的B语言基础上,里奇提出了一门新语言
不管你是从哪里听来的消息,B语言得名于汤姆森的妻子Bonnie,抑或是BCPL,一门剑桥于60年代中期开发的语言。
B语言是一种解释性语言——意味着它由一个运行于CPU之上的中间件解释执行——而C却是一门编译语言。它被翻译成机器代码,在CPU上直接执行。即便如此,C当时被认为是一门高级语言。C语言提供了里奇和汤姆森想要的灵活性,却也很快。
关于里奇一直流传的一个笑话是:C语言同时拥有了“汇编语言的强大能力以及...汇编语言的便利性”。换句话说,他承认C语言并不完美,并且十分接近硬件层次。如今C语言被认为是一门低级语言而不是高级语言。不过这个笑话并不公平。C语言提供了真正的数据结构概念,从这个角度来说已经足够高级了。
“当你在编写一个大型程序——比如UNIX——你必须管理好各种各样模块之间的交互:所有用户、文件系统、磁盘、程序执行等等。而有效的管理则需要良好的数据表示,这就是所谓的数据结构”,派克说。
“在没有数据结构组织的情况下,编写一个与UNIX一样一致和优雅的内核基本上是不可能的。需要一个机制组织好数据,而Fortran却不擅长于此。”
在那个时候,写一个操作系统并不多见,这也给了里奇和汤姆森机会,在70年代末把操作系统移植到其它平台。“从此UNIX洪水之门被打开”,派克说,“这全都多亏有了C语言。”
苹果、微软及其他
与此同时,C语言也开始传播到全世界,从贝尔实验室到全世界的大学,也到了微软,一个在80年代异军突起的软件公司。“C语言的开发是一个重大的飞跃,是个很好的折衷...C语言达到了完美的平衡,让你在较高层次高效率开发的同时,却不失去对每处细节的控制”,NVIDIA和贝尔的首席科学家兼斯坦福大学工程系教授Bill Dally说。“它为之后数十年来软件开发定下了基调。”
正如派克指出的那样,C语言内置的数据结构后来发展出面向对象范式,被现代编程语言如C++和Java大量采用。
1973年,里奇发表了关于这门语言的论文,被认为是革命开始的标志。5年后,他和同事布莱恩·克尼汉(Brian Kernighan)发布了C语言的权威著作:《C程序设计语言》。该书最早是克尼汉为C语言编写的教程,后来他拉着丹尼斯一起把书写完。
当派克还在多伦多大学读本科的时候,在一个因病返家的下午里读到了这本书。“那本参考手册相对于其他的手册而言,简直就是清晰和可读的典范。毋庸置疑是一部经典之作。”,他说,“我生病躺床上翻一翻,没想到竟让我忘记了病痛。”
和许多大学生一样,Pike那时已经开始使用C语言了。由于贝尔实验室开始分发UNIX源代码,它逐渐风靡大学校园。此外,UNIX还催生了现代开源运动。这并不是什么言过其实,里奇的影响之大怎么说都不为过。即便里奇在1983年获得的图灵奖和1998年获得的国家技术勋章也不能完全彰显他的贡献。
在克尼汉和派克眼中,里奇是一个少有的孤僻的人。“我和他一同工作了超过20个年头,但还是觉得不是很了解他这个人”,派克说。但这并不是他低调的理由。史蒂夫·乔布斯也是一个孤僻的人,只不过保持低调只使得人们对他的崇拜有增无减。
里奇所处的时代和工作环境与乔布斯千差万别,这也许是他未得到应得纪念的原因。但是,他留下的遗产总有大佬能够明白。“众所周知牛顿说过他是站在巨人的肩膀上”,克尼汉说,“我们都站在丹尼斯的肩膀上。”