出品|开源中国
文|白开水
知名软件行业分析公司 RedMonk 发布了 2022 年 1 月(第一季度)编程语言排行榜。
RedMonk 编程语言排行榜通过追踪编程语言在 GitHub 和 Stack Overflow 上的代码使用情况与讨论数量,统计分析后进行排序,其旨在深入了解潜在的语言采用趋势。该榜单一年发布两次,这是今年的第一份榜单。
目前 RedMonk 对编程语言的排序算法基本思路没有变化,但是具体的数据收集方式改变了。现在使用 GitHub Archive 作为数据源对 GitHub 数据进行分析;而 Stack Overflow 部分则直接使用其提供的实用工具 data explorer,具体排序算法见官方介绍。
下图是 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 Go
17 PowerShell
18 Kotlin
19 Rust
19 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 并驾齐驱。“现在最重要的两个问题是,首先,它是否能保持这个位置,如果是的话,是否有更多的上升空间。”