知名軟體產業分析公司 RedMonk 發布了 2022 年 1 月(第一季)程式語言排行榜。
RedMonk 程式語言排行榜透過追蹤程式語言在 GitHub 和 Stack Overflow 上的程式碼使用情況與討論數量,統計分析後進行排序,其旨在深入了解潛在的語言採用趨勢。該榜單一年發布兩次,這是今年的第一份榜單。
目前 RedMonk 對程式語言的排序演算法基本思路沒有變化,但是具體的資料收集方式改變了。現在使用GitHub Archive 作為資料來源對GitHub 資料進行分析;而Stack Overflow 部分則直接使用其提供的實用工具data explorer,具體排序演算法請參閱官方介紹:https://redmonk.com/sogrady/2022/03/28 /language-rankings-1-22/
下圖是Q1 的程式語言排行情況:
排名前20 的程式語言為:
1 JavaScript
2 Python
3 Java
4 PHP
5 CSS
5 C
#7 C
8 TypeScript
#9 Ruby
10 C
11 Swift
12 R
13 Objective-C
14 Shell
14 Scala
##16 Go17 PowerShell18 Kotlin19 Rust19 Dart#和往常一樣,本季的排名變化不大,具有穩定性。 RedMonk 方面指出,除了要討論的幾個明顯的例外情況外,近年來語言運動的規律就是幾乎沒有運動。事實上,這裡的 20 種語言中,有 17 種已經連續三個季度保持穩定。這就提出了一個有趣的問題:這種穩定性是代表了產業的使用情況,還是更類似於一個流程工件? 隨著這些排名中的變動開始減少,有趣的是考慮我們是否可能正在進入一個相對停滯的時代。當然,新的語言會不斷湧現,有些可能會因為新功能的添加或外部因素(例如下面的 Dart)而興起;但當我們環顧整個行業時,可能正在形成某種平衡的形成。語言找到了各自的利基和並達到了與特定競爭者持平的狀態。 現在說還為時過早,所有這一切都可能既不是人為因素,也不是行業轉變,而是其他外部因素的結果,持續的大流行及其廣泛影響可見和不可見是明顯的候選者。無論如何,這是我們將密切關注的事情。RedMonk 對此次排行榜中個別程式語言的排名變更進行了分析和評論:
Python (0) / Java (-1) :
在短暫的與Python 並列第二位之後,Java 又滑回了第三位。不過要明確說明的是,在這個排行榜上獲得第三名仍然是一個非常令人印象深刻的成就。 但是觀察者指出,Python永續性的實力還是值得一看的,因為它已經連續兩年在該榜單中位居第二,並且再次與最受歡迎的企業開發語言和世界上最大的兩個移動生態系統之一的語言拉開了距離。對於一種被一些人嘲笑為“just a glue language”的語言來說,這是一個相當大的成就。PHP (0):
PHP 在此次榜單中毫無變動。但這並不稀奇,因為自 2017 年以來,PHP 就一直位居第四。觀察者指出,需要注意的是經過這麼多年,PHP 仍然被人看不起。但不管人們對它有什麼看法,PHP 仍然有它的力量。C (-2):
在前一次榜單中,C 排名第五,與 C# 和 CSS 並列。但這一次,它是少有的出現了變動的語言之一;且下降了兩位,排在第七。 「雖然這種下降可能純粹是暫時的,但人們想知道它是否會追隨前者的腳步。」榜單初期,C 排在第八位,之後滑落到第九位,現在則是第十位。同時,C 上一次排名低至 7 位是 2013 年的第二次榜單。 「看看這是否只是一個小插曲,或者這種下滑是否代表了該語言向前發展的新基線,以及是否會有進一步的下降,這將是很有趣的。」# #TypeScript (0):說到進一步下降,排名中僅次於C 的是TypeScript。 TypeScript 是自 Swift 以來成長最快的語言,也是兩者中唯一進入前 10 名的語言。觀察者指出,TypeScript 似乎進入了平穩期,在過去的三個季度中一直獨佔該位置。問題是語言是否還有更多的上升空間,或者這是否就是該語言的上限。
「要往上爬並不容易,即使C 這次掉下來了,但它已有大量的程式碼和相關討論存在;如果TypeScript 要繼續它的上升之旅,像C 這樣的語言正是它需要超過的」。
Dart ( 1) / Rust (0) / Kotlin(0):有點令人驚訝的是,作為最近很「熱門」的兩種語言,Kotlin (#18) 和 Rust (#19) 也並無變動。但更令人驚訝的是,Dart 能夠上升一位並與 Rust 並列第 19 位。 Kotlin 花了兩個季度才實現這一跳躍,Rust 也花了一個季度。 Dart 卻在榜單 30 名左右徘徊約 36 個月後,不僅進入了前 20 名,還與開發者的“寵兒” Rust 並駕齊驅。 「現在最重要的兩個問題是,首先,它是否能保持這個位置,如果是的話,是否有更多的上升空間。」 ##咱們再來看看各大網友對該排名的評價與看法: