目前 RedMonk 对编程语言的排序算法基本思路没有变化,但是具体过程改变了。现在使用 GitHub Archive 作为数据源对 GitHub 数据进行分析;而 Stack Overflow 部分则直接使用其提供的实用工具 data explorer,具体排序算法见官方介绍。
下面先来看看 RedMonk 2020 年 Q3 季度的编程语言排行榜前 20 名:排名2020 年 6 月2020 年 1 月2019 年 6 月1JavaScriptJavaScriptJavaScript
2PythonPython, JavaJava
3JavaPython
4PHPPHPPHP
5C++, C#C#C++
6C++C#
7RubyRuby, CSSCSS
8CSSRuby
9TypeScriptTypeScript, CC
10CTypeScript
11Swift, Objective-CSwiftSwift
12Objective-CObjective-C
13RScala, RScala
14ScalaShell
15Go, ShellGo, ShellR
16Go
17PowerShell, PerlPowerShell, PerlPowerShell
18Perl
19KotlinKotlinHaskell
20RustHaskellKotlin
总体来说,较上一个季度来看,排名并无什么变化。前 20 名相当稳定,除了首次进入前 20 的 Rust 和掉出去的 Haskell。接下来看看值得关注的点:Python(0):此前上升至第二位,本季度保持不变。但 Python 确实打破了 JavaScript 和 Java 长久以来霸占前两位的情形,并维持了下来。RedMonk 官方指出,“Python 是成千上万个小型项目的粘合剂,也是无数个个人脚本的基础,其中包括一些为这些排名检索数据的脚本。无论是几年前的数据科学还是 GPT-3 的今天,它都在新兴和不断扩展的类别中立足”。预计 Python 接下来仍将保持良好的势头。
Java(-1):Java 排名下降了一位,但这样的细微差别也不一定意味着什么。毕竟排名中各个位置之间的差异很小,任何一个季度的排名只是一个快照,出现暂时性波动是很正常的。不过,这是自 2012 年以来,Java 第一次排在前两名之后,传统语言如 Java 在今天面临的挑战显然增多了。接下来几个季度持续进行观察,才会知道这一变化只是暂时的,还是长期流行度下降的先兆。
Rust(+1):Rust 进步一位,看起来微小的变动,使它跻身前 20。五年前的这个季度,Rust 排名 48,比 Haskell、Matlab、Clojure 和 Groovy 等语言落后近 30 位。现在它不但超越了这些语言,而且似乎有着更长足的潜力。RedMonk 认为,“考虑到它的性质和重点,它可能会像 Go 一样,在十几岁时达到上限,问题是它达到目标的速度会有多快。”
Kotlin、Dart、Julia(0):这三种语言在本季度没有名次上的变化。如果跟以往相比的话,Kotlin 在五年前排名 68,比 Rust 还落后 20 位,但此刻比 Rust 高一名。但除开历史性增长,近期这几类语言似乎停滞了。RedMonk 表示,与上一期相比,此次跟踪的相关语言的 Stack Overflow 标签增长率为负(-16%),讨论度显著降低。
TypeScript(0):TypeScript 一年前进入前 10 后,保持住了这个地位,要维持高排名也算是一项挑战。同样地,TypeScript 的问题是该语言的潜在上限。它能否在前 10 的后半部分名列前茅,甚至冲进前 5?我们静观其变。
下图是 RedMonk 2020 年 6 月的编程语言整体排名情况:
榜单详情: