发过一个动态:“还记得那年,第一次编译“Hello World”成功的感觉吗”,感触颇深。
对于每一位程序员兄弟来说,第一条语句,总莫名其妙的是它。
仔细想想,为什么是它?
很少就有人能答出来了,这个著名的“程序”究竟从何而来呢?
看到这两个单词在屏幕上正确输出,往往意味着:
劳资的代码已经能够编译、装载和正常执行了。
这个输出结果就是为了证明这一点,在一定程度上具有特殊的象征意义。
在过去的N多年间,这个程序已经渐渐地演化成为了一个久负盛名的传统。
几乎所有的程序员,无论是在你之前,或在你之后。
当第一次实现与计算机成功沟通之后,他们的肾上腺素就会急剧上升(激动不已)。
既然那么重要,那就有必要了解下背后的诞生故事。
且听我细细道来。
“Hello World”究竟从何而来?
Hello World 最早是由大神Brian Kernighan 创建的。
简单介绍一下这位大神:
加拿大计算机科学家,曾服务于贝尔实验室,为普林斯顿大学教授。他曾参与Unix的研发,也是AMPL与AWK的共同创造者之一。 与丹尼斯·里奇共同写作了C语言的第一本著作《C程序设计语言》之后,他的名字开始为人所熟知。
1978年,Brian Kernighan与另一位大神(丹尼斯·里奇 Dennis Ritchie - C、Unix之父)写了一本名叫《C 程序设计语言》的编程书,在程序员中广为流传。
他在这本书中第一次引用的 Hello World 程序,源自他在1973年编写的一部讲授 B 语言的编程教程:
当他被问及为什么选择『Hello, World!』时,他回答说:
我只记得,我好像看过一幅漫画,讲述一枚鸡蛋和一只小鸡的故事,在那副漫画中,小鸡说了一句“Hello World”
啊哈,谜题揭晓了,鸡和蛋的故事总是具有启发性...
鉴于 Hello World 这个计算机程序的广泛流行程度,这个起因看起来还是蛮合适的。
那个时候,无论是 Kernighan,还是他的同事 Dennis Ritchie - C 语言之父。
都无法想象 C 语言以及这本教程书将会在今天如此之流行。
他们所做的工作只是贝尔实验室的一个研究项目,意味着只有很少很少很少很少的一部分人知道和使用。
而在当时,贝尔实验室也只是美国电话电报公司(AT&T)的技术研究与开发机构而已。
在 C 语言以及 Hello World 程序流行起来之前:
计算机并没有得到大范围的应用和普及,计算机行业也没有开始真正的腾飞。
引发 Hello World 广泛传播的一个最主要催化剂,是 PDP-11 型计算机的面世。
PDP-11 是一款在商业上极其成功的小型计算机。
数字设备公司(DEC)以 $10,000 的单价,总共出售了六十万台。
尽管如此,这种类型的计算机已经比当时价值几百万美元的大型机在价格上便宜了许多。
有趣的是,为了加速社会的广泛接受度,数字设备公司并没有将其称为『计算机』。
为了和以往那些大型主机相区别,数字设备公司改称其为『可编程的数据处理器』。
当越来越多的机构开始采购越来越多的可编程计算机时,对于 C 语言编程书籍的需求也变得越来越旺盛了。
C 语言和 UNIX 操作系统首先在 PDP-11 这个机型上变得流行了起来。
因此,在接下来的一段时间里,其他类型的商用计算机也开始支持这个 C 编程语言以及 UNIX。
这种流行趋势最终促使成千上万的计算机相关工作者,开始阅读这本两百来页的《C 程序设计语言》,当然,这其中自然包括了 Hello World 这个例子程序。
在八十年代以及九十年代,几乎每一位曾在桌面软件领域工作过的程序员,都曾拥有一本《C 程序设计语言》(现在仍如是),在当时,这本书就已经售出了几百万本之多。
也许有很多不同的基本程序可供初学者动手尝试,但是截至目前为止,Hello World 则是其中最为著名的一个。
每一位程序员都曾记得他们的第一个 Hello World 程序,因为对他们来说,这就是一个重大事件,也许有些人还没有意识到这一点。
但是,当一名新程序员清除完一些障碍顺利抵达 Hello World 时:
他的内心体验到的不仅仅是一种成功的喜悦,更重要的是,他正在亲身经历一个跨越历史的时刻。
这就像一个潘多拉宝盒,一次成功,却带来无数嗷嗷待哺的bug...........