程序學習的必經之路 一文講述hello world的前世今生

編程語言 程序員 C語言 貝爾實驗室 牛牛爸的亂彈 2017-05-03

程序學習的必經之路 一文講述hello world的前世今生

像素版的hello, world

不管是工科出身的程序猿還是編程愛好者,您在學習一門編程語言的時候,基本上書裡的第一個範例都是輸出 “hello, world ”!這個hello, world是什麼意思?為什麼有這麼大的來頭哪?

要說hello, world,就要先向您介紹一位牛人:Brain Kernighan,中文名布萊恩柯林漢。

布萊恩1942年出生在加拿大的多倫多。1960年至1964年間,他就讀於多倫多大學,在那取得了工程物理學學士。之後通過努力,在普林斯頓大學取得電子工程博士,畢業後留在普林斯頓大學任教,直到2000年才退休。

在普林斯頓期間,布萊恩參加了UNIX系統的早期開發,同時是美國貝爾實驗室的主力成員之一。在研究室期間,他加入了貝爾實驗室九號計劃(Plan 9)的研發。在70年代,布萊恩第一個提出了UNIX這個名稱,目的是用UNIX來取代之前的UNIC(Uniplexed Information and Computing System)。

之後布萊恩根據所見即所得(What You See Is What You Get,WYSIWYG)的人機交互理念,提出了新的所見即所有(What You See Is All You Get,WYSIAYG)這個新名詞。所見即所有是高度統一的人機交互設計,目的是通過單一的畫面來完成使用者的圖形需求。

真正的hello, world範例程序誕生於1972年。當時布萊恩正在為馬丁理查德發明的BCPL編程語言(衍生為後來的B語言)書寫幫助文檔。不久這段程序便出現在 《A Tutorial Introduction to the Language B》這本書中。

當時的BCPL僅為內部使用,不算流行語言。因此貝爾實驗室在這期間又發明了大名鼎鼎的C語言。由於布萊恩曾經為BCPL寫過幫助文檔,因此他的內容被複用到了C語言文檔裡。1974年布萊恩和C語言之父丹尼斯里奇(Dennis Ritchie)共同出版了堪稱程序界聖經一樣的書 《C語言程序設計》(The C Programming Language),這本書也是到目前為止編程類書籍中銷量最高的一本。在這本書中,布萊恩的hello, world成為了第一個教學範例。

之後隨著C語言的流行,hello, world成了當時每一位程序員第一個完成的“作品”。之後C++之父Bjarne Stroustrup用hello, world程序測試了C++的第一個編輯器。隨著C和C++兩大語言逐漸佔領IT界,hello, world這款教學程序也一躍成為全世界最著名的程序,也成為了編程語言學習的傳統。

hello, world的英文原意是“你好,世界”。最早用來測試軟件編譯器,糾錯和運行環境的。它最早的版本是hello, world,沒有感嘆號,全部用小寫字母,並且逗號後面有一個空格。之後出現了很多變體,例如Hello, World,或者Hello World!等。這些和原始版本稍有不同,但都是向布萊恩和丹尼斯的C語言致敬。

下面就為您介紹幾款主流程序書寫的hello, world源代碼,看您能認出幾個。

第一款:

程序學習的必經之路 一文講述hello world的前世今生

猜猜是什麼語言?

第二款:

程序學習的必經之路 一文講述hello world的前世今生

猜猜是什麼語言?

第三款:

程序學習的必經之路 一文講述hello world的前世今生

猜猜是什麼語言?

第四款:

程序學習的必經之路 一文講述hello world的前世今生

猜猜是什麼語言?

第五款:

程序學習的必經之路 一文講述hello world的前世今生

猜猜是什麼語言?

第六款:

程序學習的必經之路 一文講述hello world的前世今生

猜猜是什麼語言?

相關推薦

推薦中...