軟件開發(fā)領(lǐng)域里有許許多多編程語言。在這里,不斷有新的編程語言在誕生,如Scala、Go、Closure等,也不斷有老的編程語言慢慢消亡。它們中的許多都曾為軟件開發(fā)作出了巨大貢獻。作為軟件開發(fā)領(lǐng)域中最重要的事物,編程語言從一誕生起就會經(jīng)歷人們的議論、批評與改進。這些編程語言的創(chuàng)造者是編程世界的標志人物,當(dāng)我看到某些人在使用某種編程語言卻不知道這門語言從何而來的時候,會感到一種淡淡的憂傷。對于最為流行的編程語言,出現(xiàn)這種情況的情況較少,比如Java,幾乎所有人都知道Java之父的名字James Gosling,但是,對于Perl、Pascal、Lisp或者Erlang呢,你是否依然知道它們的創(chuàng)造者是誰?
這些想法促使了本文的誕生,本文收集并分享了這五十年來,最成功,最流行的十門編程語言和它們的創(chuàng)造者的故事。在文章的底部還附有相關(guān)的信息圖,方便你能夠進行直觀的查看。(請注意,下面的順序并不代表排名。)
1)Java和James Gosling
Java是世界上最成功最流行的編程語言之一。James Gosling博士發(fā)明了Java,并被尊稱為Java之父。在早些時候,Java是由SUN微系統(tǒng)公司開發(fā)與提供技術(shù)支持的,在2010年1月SUN被甲骨文公司收購后,現(xiàn)在這些是由甲骨文公司來完成。Java的創(chuàng)造是為了完成WORA(Write once, run anywhere 一次編寫到處運行)的理念,它的平臺獨立性使它在企業(yè)應(yīng)用中獲得了巨大成功。到目前為止,它已經(jīng)成為了最流行的一門應(yīng)用程序編程語言。
2)C和Dennis Ritchie
1967年到1973年之間,美國計算機科學(xué)家Dennis MacAlistair Ritchie在AT&T貝爾實驗室創(chuàng)造了C語言。到目前為止,C語言仍然非常受歡迎,它被廣泛地運用于系統(tǒng)編程。它比Java要古老得多,但是還依然保持著在軟件開發(fā)領(lǐng)域的地位。另外值得一提的是,Dennis Ritchie還與他的同事Ken Thompson創(chuàng)造了世界著名的UNIX操作系統(tǒng)。如果你要讓他和 Bill Gates或者Steve Jobs比較名氣,可能他會比不上,但是要是比較軟件開發(fā)領(lǐng)域的貢獻的話,他會完爆以上那兩位。每一個程序員都會銘記Dennis Ritchie以及他為軟件開發(fā)領(lǐng)域所做出的杰出貢獻。
3)C++和Bjarne Stroustrup
Bjarne Stroustrup,出生于1950年12月30日的奧爾胡斯,是丹麥的計算機科學(xué)家。他最引人注目的成就是創(chuàng)建并推廣了編程語言C++。C++,正如其名字所暗示的一樣,是C語言之后流行的新一代語言。它所帶來的面向?qū)ο缶幊痰母拍畋徽J為是有別于C語言編程結(jié)構(gòu)的非凡特性。C++目前仍然是最受歡迎的一門編程語言,由于與計算機系統(tǒng)聯(lián)系緊密以及流行的面向?qū)ο筇匦裕粡V泛地運用于商業(yè)領(lǐng)域。
4)Python和Guido van Rossum
Python是一門用途廣泛的高級編程語言,它的設(shè)計理念是強調(diào)代碼可讀性,因此它的語法非常清晰和明亮。Python是由荷蘭國家數(shù)學(xué)和計算機科學(xué)研究院的Guido van Rossum設(shè)計的。在美國,Python在學(xué)術(shù)層面上已經(jīng)取代了Java,如今的學(xué)生開始學(xué)習(xí)編程時使用的是Python,就象上一代使用C或者Java一樣。如果你仍然不能確定是使用Python還是Java來作為初學(xué)語言,這篇文章可以幫助你作出選擇。Python廣泛運用于web應(yīng)用程序開發(fā),在軟件開發(fā)和信息安全領(lǐng)域有許多基于Python的web框架。另外,Python也廣泛被Google、Yahoo、Spotify等科技巨頭所使用。
5)PHP和Rasmus Lerdorf
無論你有多么討厭PHP,你都不能忽略這樣一個事實:有一半的互聯(lián)網(wǎng)都運行著這樣一種神奇的互聯(lián)網(wǎng)語言。PHP最初是由Rasmus Lerdorf在1995年創(chuàng)造的,PHP現(xiàn)在最主要的實施是由PHP團隊來完成,這個團隊還為PHP語言提供正式的參考。彼時,PHP是作為微軟的動態(tài)服務(wù)器頁面(ASP)服務(wù)器端腳本引擎以及類似語言如JSP的競爭者身份而出現(xiàn)的,但在逐漸受到大家好評并接受之后,現(xiàn)在已經(jīng)有超過2000萬個網(wǎng)站和100萬個Web服務(wù)器使用了這門語言。它是一門開源的語言,F(xiàn)acebook、Wikipedia、Wordpress以及 Joomla這些互聯(lián)網(wǎng)巨頭都在使用它。我還沒告訴你PHP主要用來做什么吧?還需要猜么?答案就是個人主頁了!:)
6)Perl和Larry Wall
Perl是一種高級的、通用的、解釋性動態(tài)編程語言,是由Larry Wall在1980年代中期設(shè)計和開發(fā)的。Perl因為其優(yōu)秀的文字處理能力而一舉成名。如今,它仍然是UNIX系統(tǒng)上開發(fā)報告、腳本的主要工具。Perl因解析和處理大型文本文件及其在CGI、數(shù)據(jù)庫應(yīng)用程序、網(wǎng)絡(luò)編程和圖形編程的應(yīng)用而被大家熟知。Perl廣泛地在大型互聯(lián)網(wǎng)公司中使用,如IMDB、Amazon以及Priceline。對于Java開發(fā)人員來說,添加Perl或者Python的組合是很好的補充,因為開發(fā)中需要一種腳本語言來用于特定的任務(wù)維護和支持。
7)JavaScript和Brendan Eich
如果你問我,過去5到10年里最成功的語言是哪一門?我會毫不猶豫地回答你,是JavaScript。從不久前的客戶端JQuery腳本庫到最近的服務(wù)器端開發(fā)的node.js庫,在Web開發(fā)的各自領(lǐng)域它們都占據(jù)著主導(dǎo)地位。JavaScript是一門基于原型的、動態(tài)的、弱類型腳本語言,它最初是由Brendan Eich設(shè)計并由網(wǎng)景通訊公司開發(fā)的,其功能非常強大,廣泛的用于客戶端腳本驗證、動畫、事件捕獲、表單提交及其它常見的任務(wù)。它運行于瀏覽器中并被包括Gmail、Mozila Firefox在內(nèi)的幾乎所有網(wǎng)站所使用。
8)Ruby和松本行弘
Ruby是由日本的計算機科學(xué)家松本行弘在1990年代中期開發(fā)和設(shè)計的。使用Ruby編程是非常有趣的事情,如果你使用過Ruby你一定知道我表達的意思。Ruby深受Perl、Ada、Lisp和Smalltalk的影響,它的設(shè)計是為了讓編程更有效率,更加愉快。Ruby主要用于Web應(yīng)用程序開發(fā),它被Twitter、Hulu和Groupon等大網(wǎng)站所使用。
9)Lisp和John McCarthy
John McCarthy是第二古老的高級編程語言的創(chuàng)造者。Lisp代表列表處理器(List processor)之意。我從來沒有使用過Lisp,但據(jù)說它是函數(shù)式編程語言如Haskell、Erlang和Scala的祖先。Lisp常被用于繪圖軟件的開發(fā)和防空系統(tǒng)領(lǐng)域。
10)Pascal和Niklaus Wirth
Pascal是一門有影響力的命令式和過程式編程語言,是由Niklaus Wirth在1968 – 1969年設(shè)計并于1970年出版的。Pascal作為一種小型、高效的語言旨在通過使用結(jié)構(gòu)化程序設(shè)計和數(shù)據(jù)結(jié)構(gòu)來鼓勵良好的編程實踐。