程式語言的發展歷史遠比硬體來得更長,早在電腦還未發明前,就有編碼概念產生。當歷史學家與科學家仍在界定史上第一個程式語言之際,至今已經超過兩百多種程式語言被創造出來。國外資安廠商 Veracode 為大家整理出簡易的「程式語言編年史」圖表,讓我們快速瀏覽 100 多年來重要程式語言。
Veracode 收集了不少資料,除了將大家熟知的程式語言做簡單的歷史介紹,並列出 2013 年與 2012 年個語言間的受歡迎程度,也舉出大型企業所使用的程式語言主力產品。
▲部分歷史學家與書籍都將 1843 年 Ada Lovelace 利用分析機計算 Bernoulli number(伯努利數)的方法,作為世界第一套程式語言。
不免俗地,圖表中還是要將程式語言的熱門程度排個高下。TIOBE 排行是根據網路上的程式開發人員、課程和第三方廠商的數量,並利用 Google、Bing 等搜尋引擎及Wikipedia、Amazon、YouTube 統計資料所排出的程式語言排名。主要功用是反映程式語言的受歡迎程度,而非開發難易度或好壞。
▲圖中顯示 Java 與 C 繼續穩坐一、二名,但 Apple 專用的 Objective-C 從過去第五名躍升到第三名。
(編按:此張圖表約莫是 2013 年中所製作,欲看最新的 TIBOE 排名,可前往 TIBOE 網站)
各大企業最愛的程式語言是?
回到歷史講古的時間,以下我們能看到隨著年代推移,當時開發的程式語言特色與使用領域,並被哪些企業或產品所使用。
- 1957 年 - Fortran 語言(Formula Translation 的縮寫),通常作為數學和科學計算(如天氣)之用;使用單位:NASA。
- 1958 年 - Lisp 語言(List Processor 的縮寫)適用於樹狀數據結構,自動存儲管理,動態類別等資料結構,多用在防空系統、AI 人工智慧方面;使用單位:美國國防部。
- 1959 - Cobol 語言(Common Business-Oriented Language 的簡稱)是第一種被美國國防部授權使用的程式語言。主要用在財務或行政類的商業軟件,也是不少信用卡,自動提款機的程式語言。
- 1970 - Pascal 著重在程式與數據結構,廣泛應用在 80 年代;為 1983 年時 Apple 推出的 Lisa 個人電腦與 Skype 的程式語言。
- 1972 - C(在 C 之前還有個 B 語言)是早期少見的低階程式語言,為 Unix 系統根基,是目前第二流行的程式語言。同時還衍生出多種新語言,包括 C#、Java、JavaScript、Perl、PHP 與 Python。多用在程式、遊戲開發等用途。
▲早期的程式語言有項特色,就是多為接近人類語言的高階程式語言。
- 1983 - C++ 為 C語言的延伸版,並增強 Classes、virtual functions 與 templates 等功能。主要用在這種商業應用開發,嵌入式套件,伺服器/客戶端應用程式及遊戲開發;使用的公司有 Adobe、Google Chrome、Mozilla Firefox、微軟 IE 瀏覽器等。
- 1983 - Objective-C,加入 Message-passing 功能的高階程式語言,同樣是 C 語言的延伸型;主要用在 Apple 的 OS X 和 iOS 系統。
- 1987 - Perl 為高階語言,當初是為了 Unix 報表處理系統所開發,現代則是因其多變的靈活性而著名;用途多元,IMDB、Amazon 皆以此為開發主力。
▲近年來 Apple 產品火紅,Objective-C 的受歡迎程度也逐漸向前提升。、
- 1991 - Python 高階語言,提供不同過去一般風格的編碼風格,使用上有著不少樂趣;用在 Web 應用程、軟體開發、資料安全等用途,廣泛為 Google、Yahoo!、Spotify 所使用。
- 1993 - Ruby(以創作者的誕生石為名)受到 Perl、Ada、Lisp、Smalltalk 等語言的影響,Ruby 旨在帶來更愉快的程式開發體驗。應用於 Web 應用程式開發,Hulu、 Groupon 與早期的 Twitter 均有使用。
- 1995 - Java(命名由來是因為開發程式會消耗掉很多咖啡)是目前最熱門的程式語言,主要用途在網路應用、網站程式開發、圖形使用介面(GUI)開發;Android 系統與應用程式開發是以 Java 為主。
▲Twitter 一開始廣泛使用 Ruby,但近年來已經改為 Scala 語言。
- 1995 - PHP 為大多數企業廣泛使用的開放原始碼軟體,用於建築、動態網頁、網站端開發應用;Facebook、Wikipedia、Digg、WorldPress、Joomla 都是主要用戶。
- 1995 - JavaScript 可作為動態網頁、表單提交/驗證功能開發、動畫、使用者行為追蹤等;用於 Gmail、Adobe Photoshop,Mozilla Firefox 等。
▲PHP 仍舊是許多網站喜愛的程式語言。
程式開發的安全性統計:
▲從安全性來分析,當漏洞產生時,Java 與 .Net 約有 7 成可歸咎於程式編碼不良,而 C/C++ 則是錯誤處理(Error Handling)所導致。
▲圖表中也列出 10 個增強資料安全的編碼技巧。
本篇文章來源 :http://www.techbang.com/posts/16135-programming-languages-chart
留言列表