RedMonk 2020 年 Q3 編程語言排行公佈,Python 第2、Rust 進入前二十

RedMonk 2020 年 Q3 編程語言排行公佈

知名軟件行業分析公司 RedMonk 發佈了 2020 年第三季度半年度編程語言排行,這是 RedMonk 今年發佈的第二份榜單,上一次是今年 3 月發佈的第一季度編程語言排行。java

RedMonk 榜單的排名過程作了一些調整,雖然具體的收集方式已經改變,但基本過程仍然是同樣的。RedMonk 從 GitHub 和 Stack Overflow 提取語言排名,並將它們結合起來進行分析。這種排名方法要關聯語言討論和使用狀況,來提取對潛在的將來採用趨勢的看法。編程

2020 第三季編程語言排行

2020 第三季編程語言排行

前二十名排名以下:segmentfault

1 JavaScript瀏覽器

2 Python安全

3 Java編程語言

4 PHP工具

5 C ++spa

5 C#設計

7 Rubyblog

7 CSS

9 TypeScript

10 C

11 Swift

11 Objective-C

13 R

14 Scala

15 Go

15 Shell

17 PowerShell

17 Perl

19 Kotlin

20 Rust

本季度的排名整體上變化較小。

這是不是相對語言軌跡正常起伏的一部分,目前尚不清楚,但 RedMonk 已經運行了下面討論的一些初步數據,並將密切關注趨勢的發展。

Python(0):本季度排名中最引人注目的「贏家」是Python,是第一個獨佔前兩名的非 java 或 JavaScript 語言。

在過去的幾年裏,這門語言的多功能性被低估了,就像鼎盛時期的 Perl 同樣,Python 是成千上萬個小項目的粘合劑,也是無數我的腳本的基礎,包括一些爲這些排名檢索數據的腳本。

Java (- 1) : 排名中個別名次之間的差異很小,任何一個季度的排名都只是一個快照,受到暫時的波動影響。可是值得注意的是,自 2012 年執行這些排名以來,這是咱們第一次將 Java 排在第一或第二之外。

即便其餘報告過早或錯誤地稱其爲死語或註銷該語言,它在這些數量級排名中的強勁表現證明了咱們定性地觀察到的結果,即因爲 Java 可以發現和知足新的用例,它仍然被普遍使用。

然而,在開發者時間和關注度方面,Java 歷來沒有像今天這樣面臨過如此激烈的競爭,儘管它已成爲企業的多年支柱,但它傳統的優點地位並無獲得保證。所以,在接下來的幾個季度裏關注 Java 將是一件很是有趣的事情,它將決定這種運行是一種暫時的偏離,是一種新的現狀,仍是一種長期流行程度降低的早期指標。

Rust (+ 1) : 說到與 Java 競爭開發人員時間和注意力的語言,Rust 的排名正在穩步提高。五年前的這個季度,Rust 在這些語言中排名第48位,落後於 Haskell,Matlab,Clojure 和 Groovy 將近三十位。

截止到本季度,它已經超越了它們,而且彷佛還有更多的增加潛力。它對安全應用程序的構建的關注尤爲重要,而且愈來愈重要,而且有助於 Rust 在愈來愈多的知名項目中的使用。

Kotlin(0),Dart(0),Julia(0):這三種語言在本季度沒有名次上的變化。若是跟以往相比的話,Kotlin 在五年前排名 68,比 Rust 還落後 20 位,但此刻比 Rust 高一名。

然而,撇開這種歷史性的增加不談,對於咱們最近在這些排行榜上名列前茅的許多公司來講,這種增加並無帶來什麼變化。這三種語言在最近的發展軌跡中都停滯不前了。

咱們跟蹤的 Stack Overflow 標籤與咱們上次運行時相比增加率爲負(- 16%) ,可是調查語言中 GitHub 的請求增加率爲11% 。從歷史上看,這並非一種反常的模式,所以彷佛不會對代碼貢獻和討論產生過大的影響。

TypeScript (0) : 與 Python 或這裏提到的其餘幾種語言同樣,在 TypeScript 的運行方面沒有什麼須要報告的。

可是,考慮到它在第 9 位的位置,這自己就很值得注意。TypeScript 的問題是該語言的潛在上限,它會排在前 10 名的後半部分嗎?仍是能夠推進前五名?咱們將拭目以待。

排名流程

分析中 GitHub 部分使用的數據源是 GitHub Archive。經過提取請求的方式來查詢語言,其方式相似於 GitHub 用於組裝 octverse 狀態的方式。查詢被設計成與前一個過程儘量類似。

  • 語言是基於基本存儲庫語言的。雖然下面繼續列出了一些注意事項,但它確實具備與先前的方法相結合的好處。
  • 排除了分叉回購。
  • 使用聚合歷史來肯定排名(儘管基於表結構的變化,這再也不可以經過單個查詢來完成)。
  • 對於 Stack Overflow,只需使用其有用的數據瀏覽器工具收集所需的指標。

其餘注意事項

  • 要包含在這個分析中,必須在 GitHub 和 Stack Overflow 中均可以觀察到一種語言。
  • 這裏沒有說這些排名表明瞭更普遍的廣泛用法。它們只不過是對兩我的羣之間相互關係的檢驗,咱們相信這兩我的羣能夠預測將來的使用狀況,所以它們具備價值。
  • 有許多潛在的社區能夠被調查來進行這種分析。和 Stack Overflow 在這裏首先使用是由於它們的大小,其次是由於它們公開了分析所需的數據。然而,咱們鼓勵有關各方使用其餘來源進行本身的分析。
  • 全部的數字排名都應該有所保留。咱們在這裏嚴格按照數字排名是爲了引發興趣。通常來講,數字排名遠不如語言的層次或分組相關。在許多狀況下,列表中的一個點與下一個點是沒法區分的。然而,在情節上語言層次的分離,一般表明了相對受歡迎程度的巨大差別。
  • 此外,排名越降低,到年可用於語言排名的數據就越少。除了語言的頂層,根據快照的不一樣,須要評估的數據量很小,而且語言的實際位置隨着列表的進一步深刻而變得不那麼可靠。
  • 那些在 Stack Overflow 以外擁有社區的語言,如 Mathematica,在這個軸上的表明性不足。衡量100個不一樣社區站點的過程是不可能的,一方面是由於許多站點沒有可用的公共指標,另外一方面是由於不一樣社區站點之間的相互衡量在統計學上是不正確的。

segmentfault 公衆號

相關文章
相關標籤/搜索