作為全球知名的開發者社區 GitHub,包括了 Google、Facebook、微軟等眾多技術巨頭都會在這里安營扎寨,而每年 GitHub 都會發布一份Octoverse 報告,該報告總結了 GitHub 和開源社區的一些趨勢和內部消息,以及來自 GitHub 數據科學團隊的更多資料。
在 GitHub 上,每項技術的核心都是編程語言。今年的Octoverse報告(https://octoverse.github.com/projects)中,我們對 GitHub 上的編程語言的出鏡率和趨勢做了一個簡單的分析。本文將深入分析最熱門語言流行的原因和應用。
衡量編程語言的流行度有很多種途徑。在這份報告中我們采用了公開和私有代碼倉庫中的主要語言的獨立貢獻者的數量。另外,我們還采用了主要語言的代碼倉庫的創建數量。
2008~2018 年編程語言排行榜,根據代碼倉庫創建數量排名
如今,使用 Java 創建的代碼倉庫超過了任何其他語言。過去十年內 JavaScript 創建的代碼倉庫數量穩定上升,從上圖可以看出從 2011 年之后就有了穩定的上升趨勢。在這個時間點,GitHub 的總代碼倉庫數量將近 100 萬,而新的 JavaScript 服務器(如 2009 年發布的 Node.js)使得開發者可以在客戶端和服務器開發中使用同一種語言。
編程語言排行榜,根據 2018 年 9 月 30 日時的貢獻者數量排名
JavaScript 也是公開和私有代碼倉庫中擁有貢獻者最多的語言。在世界上任何地方、任何大小組織中都是這樣。但是,我們也看到了 GitHub 上新興語言的成長。TypeScript 去年在所有區域的公開、私有和開源代碼倉庫中進入了前十名。而像 DefinitelyTyped(https://github.com/DefinitelyTyped/DefinitelyTyped)之類的項目能幫助人們在 TypeScript 中使用普通的 JavaScript 庫,促進了 TypeScript 的接受程度。
我們也注意到一些語言的流行度在下降。Ruby 在過去幾年的流行程度一直在下降。盡管 Ruby 的貢獻者人數依然在上升,但 JavaScript、Python 等其他語言增長得更快。新的項目很少用 Ruby 寫,特別是個人或小型組織的項目,這些項目更傾向于使用 JavaScript、Java 或 Python。
按照地理位置劃分的流行程度,根據 2018 年 9 月 30 日時的貢獻者數量排名
在過去 12 個月中,我們并沒有看到不同區域中的語言使用情況有多少不同。但是,TypeScript 在南美和非洲的排名要高于在北美和歐洲的排名。原因可能是非洲和南美的開發者社區相對較新。去年非洲和南美的代碼倉庫平均要比北美和歐洲的代碼倉庫更年輕。這也許意味著開發者們更傾向于較新的開發技術。
增長最快的語言排行榜,根據 2018 年 9 月 30 日時的貢獻者數量排名
許多大公司的項目都在使用 PowerShell,使得它排名上升。類似地,Go 也因為大型組織而進入了排名,而且在各種類型的代碼倉庫中都有增長,今年它在開源代碼倉庫中排名第九。我們也看到,趨勢在朝著靜態類型的方向發展,以增強類型安全性和互操作性。其中 Kotlin、TypeScript 和 Rust 增長最快。
2018 年為什么是這些編程語言流行?
那么,2018 年編程語言流行的原因是什么?下面是我們的觀點。
類型安全
除了 Python 之外,我們看到了靜態類型的崛起,很可能是因為它能為個人開發者和大型應用的開發團隊帶來安全性和效率。TypeScript 的可選靜態類型增加了安全性,而 Kotlin 能提供巨大的交互性,同時還允許創建可信的類型安全的程序。
互操作性
TypeScript 在榜單中上升的部分原因是它能與 JavaScript 共存。Rust 和 Kotlin 也在上升榜中,兩者分別吸引了 C 和 Java 的使用者。Python 的靈活性和互操作性也十分出色,比如開發者可以直接從 Swift 中調用 Python API(https://github.com/tensorflow/swift/blob/master/docs/DesignOverview.md#python-interoperability)。
互操作性不僅意味著語言可以建立在已有的社區上,還意味著語言可以與不同的社區融合并超越。比如,Kotlin 去年被認為是 Android 平臺上的首選。
開源
當然,這些語言都是開源項目,且都在 GitHub 上維護。社區負責為 Kotlin 等新語言進行改進、回答問題并提供資源,幫助開發者選擇這些語言,并在 2018 年以后繼續使用這些語言。
-
JAVA
+關注
關注
20文章
2984瀏覽量
106841 -
編程語言
+關注
關注
10文章
1955瀏覽量
36066 -
開源代碼
+關注
關注
0文章
37瀏覽量
3151
原文標題:JavaScript憑借什么力壓 Java、Python,橫掃編程語言榜單?
文章出處:【微信號:mcuworld,微信公眾號:嵌入式資訊精選】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
深入分析LED電源損壞原因
Xilinx_FPGA_內部結構深入分析
深入分析Windows和Linux動態庫應用異同
筆記本的結構深入分析
如何深入分析電源電路技巧(二):駕馭噪聲電源

評論