【程序員上下50年】編程語言發(fā)展史
編程語言發(fā)展史
1942年,阿塔納索夫-貝瑞計算機(ABC)被設計出來,盡管它不可編程,只能用來求解線性方程,但這并不妨礙ABC成為人類歷史上第一臺電子計算機。

1946年,大家所熟知的第一臺通用計算機埃尼阿克(ENIAC)問世。這個31噸重的大胖子永遠也不會想到自己的后代將和698克劃上等號。

隨著計算機的誕生,程序員也隨之誕生。只不過,在最開始的時候,電腦需要手動操作,程序員還是個體力工作者。
雖然人類有“能坐著就不站著,能躺著就不坐著”的優(yōu)良傳統(tǒng)。但怎么跟計算機講話這件事兒還真是個技術活兒。

最先出生的編程語言是機器語言。
它非常簡單。有多簡單呢?簡單到只用“1”和“0”兩個數字就可以進行編程。

它也非常讓人惱火。有多惱火呢?就像把鹽粒和味精混合到一起,讓你挑出來混進去的一粒白砂糖。

盡管機器語言難學難懂、不可移植、編程繁雜,但速度極快。人類通過機器語言跟計算機對話,跟外國人用極其標準的中文和中國人講話差不多。

對人類而言。0.00001秒和0.00000000001秒并沒有什么差別。所以,哪怕你機器語言跑得再快,也不能獲得人類芳心。

于是,匯編語言誕生了。

匯編語言用助記符代替了機器語言中的操作碼,用地址符號或標號代替了指令或操作數地址。
大概就相當于,這幫學中文的外國人開始學拼音了。

不過,匯編語言所做的事情只是將機器語言做了簡單的編譯。所以,移植和推廣依然很困難,讀懂代碼的設計意圖也存在不小的障礙。
但對人類而言,助記符顯然比一大串的數字要簡單得多。對計算機而言,有專門的程序幫它們把這些莫名其妙的字符翻譯成它們每天打交道的“01”,速度上并不會受到什么限制。

所以直到現在,匯編語言仍能占有一席之地。
只是,這一席被擠得越來越沒有空間,也越來越沒有尊嚴。

終于在1956年,集萬千寵愛于一身、引無數程序員競頭禿的高級編程語言誕生了。

FORTRAN,這個出生就注定了將圍繞著無數锃光瓦亮頭頂的榮光的語言,居然是被一個并不怎么喜歡編程的約翰·巴克斯(John Warner Backus)發(fā)明出來的。
FORTRAN這個高級編程語言家族中長子,經過了幾代更迭,依然在數值計算、科學和工程技術領域占據著強大的優(yōu)勢地位。老歸老,但是要記住,你大爺永遠都是你大爺。

當然,編程語言這東西倒也不是說越有資歷就越受青睞。根據TOIBE 2019年10月發(fā)布的程序語言排行榜來看。

95年的Java和70年的C語言依然穩(wěn)穩(wěn)占據著前二的寶座,91年的Python如今勢頭正猛,坐上了第三的位置。

排名前十的語言中:70后C語言一枝獨秀;80后有3種語言上榜,表現最好的是83年被正式命名的C++,位列第四;90后則有4種語言上榜; 00后只有兩種語言上榜。
我們有理由相信,未來將會有更豐富、更方便、更人性化的編程語言出現。也許某天,可以把人類語言直接翻譯成機器語言也說不定……

本期內容到這里就結束啦。

