代碼是一門語言共啃,這門語言搭建了人與計算機溝通的橋梁。通過編寫代碼正什,人類可以“命令”計算機開發(fā)網(wǎng)頁、開發(fā)軟件号杏、搭建游戲... ...
這門語言并不是上帝的發(fā)明婴氮,它是前輩們發(fā)揮聰明才智創(chuàng)造出來的,前輩們的創(chuàng)造過程雖然充滿了有趣與巧合盾致,但是并不神秘主经!本文就從1980年開始,帶你一覽編程語言發(fā)展的“別樣”歷史庭惜。
1800年罩驻,Joseph Marie Jacquard讓織布機學會了讀穿孔卡片,造出了第一臺重度使用多線程處理單元的機器护赊。
預見到天網(wǎng)(Skynet)誕生的織布工們激烈地反對該項發(fā)明惠遏。
Ada Lovelace
1842年,Ada Lovelace厭倦了貴族生活骏啰,于是在記事本上寫寫畫畫节吮,而記事本上的這些內(nèi)容被后世稱作第一個發(fā)布的計算機程序。
可惜當年沒有電腦判耕,真是不巧透绩。
1936年,Alan Turing啥都發(fā)明了壁熄,但英國法庭看他不順眼帚豪,還閹了他。后來女王免了他的罪名请毛,雖然當時他已經(jīng)死去幾百年了志鞍。
Alonzo Church
1936年,Alonzo Church和Turing一樣啥都發(fā)明了方仿,但他生活在太平洋彼岸(也不是基佬)所以沒被女王人道主義固棚。
John Backus
1957年,John Backus發(fā)明Fortran語言仙蚜,也是“真正的編程者”使用的第一種計算機語言此洲。
1959年,Grace Hopper發(fā)明了第一個面向企業(yè)委粉、可用的編程語言呜师,命名為“通用的業(yè)務導向語言”,簡稱為COBOL贾节。
1964年汁汗,John Kemeny和Thomas Kurtz都覺得現(xiàn)有計算機語言的編程太難了衷畦,人們需要回歸基礎(basic),因而將他們發(fā)明的計算機語言稱之為BASIC知牌。
1970年祈争,Niklaus Wirth創(chuàng)造了Pascal和幾門其它語言(他就是這么愛創(chuàng)造語言),他還創(chuàng)造了沃斯定律角寸。相形之下摩爾定律就過時了菩混,因為軟件開發(fā)者基于摩爾定律寫的軟件太臃雜了,連主機都帶不動扁藕。后來Electron.js的發(fā)明和基于它的抽象概念也證明了這一點沮峡。
Dennis Ritchie
1972年,Dennis Ritchie在貝爾實驗室里對工作產(chǎn)生了厭倦亿柑,于是決定搞個帶大括號的C語言邢疙,并取得了巨大的成功。之后橄杨,他在語言中加入分段錯誤和其它一些對開發(fā)者友好的功能來增強C語言的生產(chǎn)力秘症。
干完這些工作后,離下班還有幾小時式矫,所以他和貝爾實驗室的小伙伴們決定開發(fā)個程序來展示C語言,然后他們就造了個叫Unix的操作系統(tǒng)(紅紅火火恍恍惚惚)役耕。
Alan Kay
1980年采转,Alan Kay建立了一門叫做Smalltalk的面向?qū)ο蟮木幊陶Z言。這門語言里瞬痘,什么都是對象故慈,對象本身也是一個對象】蛉可惜大家都沒時間思考閑聊(small talk)的意義察绷。
Larry Wall
1987年,Larry Wall經(jīng)歷了一次宗教體驗津辩,成為了一名傳教者拆撼,他傳播的教義就是Perl。
Jean David Ichbiah
1983年喘沿,Jean Ichbiah發(fā)現(xiàn)Ada Lovelace的程序就從來沒真正運行過闸度,于是決定以她名字創(chuàng)建一門語言。
但她的語言也沒運行過蚜印。
1986年莺禁,Brac Box和Tol Move決定要創(chuàng)建一門基于Smalltalk、不可讀版本的C語言窄赋,并稱之為Objective C語言哟冬,但沒人看得懂這門語言的語法楼熄。
Bjarne Stroustrup
1983年,Bjarne Stroustrup從未來穿越過去浩峡,發(fā)現(xiàn)C語言沒給編譯留足時間可岂,于是他把所有能夠想到的功能加進去了,并命名為C++红符。幾乎所有的編程者都在使用它青柄,這樣他們就有理由在工作的時候擼貓片和看科學松鼠會了。
Guido van Rossum
1991年预侯,Guido van Rossum寫了本關于蛋蛋和火腿的食譜(Python之父)致开。
1993年,Roberto Ierusalimschy和他的朋友們覺得他們需要一門英國本地化的腳本語言萎馅,在本地化過程中出了個錯双戳,使得本應該從0開始的計數(shù)從1開始了,然后他們把這個叫做Lua糜芳。
Rasmus
1994年飒货,Rasmus Lerdorf為他個人主頁的CGI腳本弄了個模版引擎,并把這個文件發(fā)布在網(wǎng)上了峭竣。世界各國人民欽定這個文件哪哪都要用上塘辅,于是興奮炸裂的Rasmus又放了點額外的綁定數(shù)據(jù)庫上去,并稱之為PHP皆撩。
Yukihiro Matsumoto
1995年扣墩,Yukihiro Matsumoto不是很開心,還發(fā)現(xiàn)其它碼農(nóng)也不是很開心扛吞,所以他創(chuàng)建了Ruby語言讓大家開心開心呻惕。Ruby語言面世后,Matz挺開心的滥比,Ruby社區(qū)也挺開心亚脆,大家都很開心(*^__^*)。
Brendan Eich
1995年盲泛,Brendan Eich花了個周末設計了門語言濒持,希望能夠為世上所有的網(wǎng)頁瀏覽器賦能,最終也影響天網(wǎng)查乒。他最開始去了網(wǎng)景弥喉,并稱自己設計的語言為LiveScript,但Java在代碼審查環(huán)節(jié)火了玛迄,于是他們決定用大括號才好由境,改名叫JavaScript。
后來Java一團糟,于是他們覺得這語言跟Java沾親帶故會出事虏杰,所以又在標準化時候把它改名叫ECMAScript讥蟆,但人們還是按習慣稱之為JavaScript。
James Gosling
1996年纺阔,James Gosling創(chuàng)建了Java瘸彤,第一個真正的過于詳細的、設計模式高于實用性的笛钝、面向?qū)ο蟮木幊陶Z言质况。這么一個非常有效的、管理員供應商集裝箱供應商服務管理者單件模式管理者供應商模式就誕生了玻靡。
Anders Hejlsberg
2001年Anders Hejlsberg重建了Java结榄,并稱之為C#,因為用C語言編程比Java要更酷囤捻。
大家都很愛這個Java新版本因為它一點也不像Java臼朗。
David Heinemeier Hansson
2005年,David Hanselmeyer Hansen創(chuàng)建了個叫做RubyonRails的網(wǎng)頁框架蝎土,人們從此把紅寶石與鐵路聯(lián)系起來了视哑。
John Resig
2006年,John Resig給JavaScript寫了個助手庫誊涯,所有人都覺得這也是門計算機語言挡毅,給許多從網(wǎng)上復制粘貼jQuery代碼的人們解決了就業(yè)問題。
Ken Thompson
2009年暴构,Ken Thompson和Rob Pike打算也造個類似于C語言但有更安全的設備的語言慷嗜,而且用金花鼠當作吉祥物讓它更好推銷。
他們把這門語言叫做Go語言丹壕,也開源了,支持社區(qū)的資金來源就是賣金花鼠的周邊護膝和頭盔薇溃。
2010年菌赖,Graydon Hoare也想造一門類似C語言的語言,并稱之為Rust沐序。人們表示琉用,所有的軟件都應該現(xiàn)在立即馬上用Rust語言重寫一遍。但Graydon喜歡一閃一閃的亮晶晶而不是生銹的(rust)東西策幼,所以去Apple開發(fā)Swift去了邑时。
2012年,Anders Hjelsberg想在網(wǎng)頁瀏覽器里重寫C#特姐,于是他設計了TypeScript晶丘,其實也是JavaScript的一種,但更像Java了。
2013年浅浮,Jeremy Ashkenas也想像Ruby開發(fā)者那么開心沫浆,所以他搞了個CoffeScript,也就是JavaScript的編譯滚秩,但看起來更像Ruby专执。然鵝,Jeremy并沒有像Matz和Ruby開發(fā)者那樣開心郁油。
Chris Lattner
2014年本股,Chris Lattner設計Swift的初衷是讓它別像Objective-C一樣,所以最后Swift看起來就像是Java了桐腌。
需要學習編程或者為了入行拄显、轉(zhuǎn)行學習編程的伙伴可以關注.工.眾.號:【速學C語言】公眾號回復“8” 領取全套200G免費C/C++學習資料、視頻哩掺!