今天,IEEE Spectrum 釋出了第五屆頂級程式語言互動排行榜:Python 衛冕成功,C++ 異軍突起,雄踞第二,C 語言和 Java 則「退位讓賢」,分據第三和第四。
榜單地址:https://spectrum.ieee.org/static/interactive-the-top-programming-languages-2018
IEEE 的榜單結合 9 個資料來源的 11 個衡量指標(去年的排行榜有 12 個指標,今年少了 Dice job 網站資訊,因其關閉了 API),權衡併發布了 47 種語言的排行榜,少於去年的 48 種。該排行榜允許讀者根據自己的喜好或需求設定權重,如語言趨勢或員工最關注的語言等。讀者可以檢視 Trending、Jobs、Open 等不同維度的程式語言排行資料。
讀者可以根據自己的喜好或需求設定權重。
2018 年 IEEE 頂級程式語言互動排行榜和 2017 年排行榜前十名對比圖。
Python 的排名從 2016 年開始就持續上升,去年順利登頂,僅以 0.3 分的優勢超越第二名 C 語言險奪第一。而今年,Python 依然高居榜首,且與第二名拉開差距。但是,今年的第二卻不再是 C 語言,而是 C++ 了。C++ 的異軍突起,使得 C 語言和 Java 都不得不「退位讓賢」,分別降至第三和第四(去年它們分別位至第二和第三)。
為什麼 Python 會繼續獲得程式設計師的青睞呢?頂級程式語言中的另外兩個變化可能會給出點提示。
首先,Python 現在被視為嵌入式語言。以前,編寫嵌入式應用程式嚴重傾向於編譯語言,以避免在處理能力和記憶體有限的機器上高速評估程式碼的溢位。摩爾定律雖已漸式微,但還未完全消退。很多現代微控制器已有足夠的能力承載 Python 直譯器。以這種方式使用 Python 的一個好處是,它在某些應用程式中,通過互動提示或動態重新載入指令碼來操作附加硬體非常方便。涉足到一個新的領域,只會增長 Python 的人氣。
Python 越來越受歡迎的另一個原因是 R 語言的熱度下降。R 在 2016 年達到頂峰,排名第五,去年跌至第六,今年排名第七。R 是一種專門處理統計和大資料的語言。隨著人們不斷把對大型資料集的興趣轉向其在機器學習上的應用,且由於資料統計和機器學習中高質量 Python 庫的出現,相比更專業的 R 語言,靈活的 Python 語言變得更有吸引力。
IEEE Spectrum 聚焦未來發展趨勢,旨在衡量各項指標以找出發展迅速的語言,可以看到谷歌的 Go 已經從第 7 位上升到第 5 位。但名次上升最快的還是 Scala,從第 15 位上升到第 8 位。Scala 是為了改進 Java 而建立的,所以 Java 名次下降的部分原因可能是 Scala 的上升。
令人驚訝的是,ActionScript 的排名提升非常有限。去年它以 0.0 的排名墊底,幾乎要被淘汰,但今年它以 1.6 分回到了倒數第二。Forth 是嵌入式世界的一匹老馬,但是卻拿了零蛋。這是作者個人最喜歡的語言之一,但如果明年它繼續拿零分,就要被踢出排行榜了。
那麼這一年中發展最快的程式語言又是哪些呢?和去年一樣,Python 佔據榜首,C++ 躍居第二,Java 和 C 排名位置各掉一名。
接下來,我們來看工作環境中程式語言的使用情況。Python 從去年的第三名躍居第一,Java 從第一名掉落至第三名,C 語言保持不變,而 C++ 依然勢頭強勁,評分增幅達 1.4。
而開源專案鍾愛的程式語言排名如下:
前四名穩定不變,而去年的第五名 Swift 掉落至 22 名!
最後來看根據設計自由度衡量出的程式語言排名:
Python 仍然是第一名,Java 從去年的第二名跌至第四,JavaScript 排名未變,但所佔比例由 17 年的 88.9 下跌至今年的 82.3。PHP 與 JavaScript 持平,較去年略有上升。
綜合來看,Python 在各個榜單上均穩居第一,而 C++ 也不容小覷。