近日,全球知名行业分析公司 RedMonk 发布了 Q3 的编程语言榜单,本排行榜基于 GitHub 和 Stack Overflow 两大社区中使用及讨论的编程语言热度进行排行,真实地反应了开发者对各大编程语言应用的现状,也希望透过此榜单能够为更多的从业者在工具的抉择层面带来一些借鉴。

%title插图%num

RedMonk 编程语言排行榜 TOP 20

通过调查与分析,RedMonk 编程语言排行榜 TOP 20 如下:

%title插图%num

  1. JavaScript
  2. Python
  3. Java
  4. PHP
  5. CSS
  6. C++
  7. C#
  8. TypeScript
  9. Ruby
  10. C
  11. Swift
  12. R
  13. Objective-c
  14. Shell
  15. Scala
  16. Go
  17. PowerShell
  18. Kotlin
  19. Rust
  20. Dart

%title插图%num

值得关注的变化

和上个季度的榜单相比,在本季度中,RedMonk 官方也总结出一些值得关注的重要变化:

  • Java

过去一段时间中,在 Python 迅猛的增速之下,Java 的脚步有所放缓,从原来的第二名下降到了第三位,就在很多从业者担心 Java 的使用率是否会进一步下降时,在本季度中,Java 重新回归,与 Python 并列榜单第二位。

不过,在编程语言层出不穷的发展趋势下,不少从业者似乎并不太看好 Java,甚至定期为企业基础设施的坚定者(Java)撰写墓志铭。但现实来看,Java 屹立不倒自然有其自身的发展优势,它曾作为用于数字电视机顶盒的一种主力编程语言,在不断变化的技术潮流中,仍然可以找到其能够胜任的地方。

这些年来,Java 在这些排名上的表现给人留下深刻印象,而且由于它表现出非凡的适应快速变化环境的能力,因此它是一种难以与之抗衡的语言。

  • TypeScript

TypeScript 在本季度的排名位居第八位,现在该语言面临*大的问题是其是否还能够持续增长甚至超越 C#、C++、PHP 等老牌编程语言?亦或是现在的排名已经到了它的*限?

对此,RedMonk 官方表示,现在一切说不准,但一年前这个时候,TypeScript 在排名所依据的综合得分中落后第 5 名语言 6 分,但这次差距只有两个点。当然,过去的表现也不总是能够代表其未来的发展。

  • Go/Kotlin/Rust

与 TypeScript 一样,Kotlin 和 Rust 在本次排名中都没有变化。一方面,这一现状可能会令该些语言的拥护者失望,但另一方面,它也反映了系统语言新出现的一些现实问题,即 Kotlin 和 Rust 的相对表现,以及 Go 的长期停滞不前会给我们带来一些思考。

多年来,Java 一直面临着强大挑战者的挑战,以争夺企业应用程序首选语言的称号。但是,正如上文所述,Java 并没有在被挑战的过程中受到一定的影响。事实上,与 Go、Kotlin 和 Rust 不同,Java 在排在第三位的两个季度之后,它的份额在此次成功增长。通过自身适应性和企业应用的习惯相结合,Java 仍在企业级应用程序市场中占有很大的份额,这也意味着 Go、Rust、Kotlin 这些挑战者能够带来的影响微乎其微,同时因为这些语言共享 JVM 平台,所以其与 Java 之间的竞争要远小于这些语言内部之间的竞争。

  • Dart

上个季度,RedMonk 在发布编程语言榜单时,曾分析了 Dart 正在逐渐上涨的原因:虽然其语法不如 Kotlin 简洁,但是随着 Flutter 框架的成熟发展,Dart 的未来可期。

如今经过了一个季度的时间,Dart 正如期待的那番,取代了 Perl 的位置成功进入榜单的 TOP 20。在实现这一小成就之后,现在的问题就是 Dart 能否持续保持着 TOP 20 的排名了。当前,排在其前面的 Kotlin 和 Rust 两门语言的受欢迎度要略胜 Dart 一筹,因此,Dart 能否在挑战中站稳自己的脚步,还得看接下来的表现。

  • Julia

不久前,Julia 所在的公司 Julia Computing 刚刚完成了 2400 万美元的 A 轮融资,这笔资金将被用于发展 Julia 生态系统,而 Julia 语言自设计之初也被寄予厚望,正如其开发团队所设想的那番,Julia 将集 Python、C、Ruby、R、Perl 等众多语言之所长:

我们想要一种拥有自由许可的开源语言,同时拥有 C 的速度和 Ruby 的灵活。我们想要一种同像性语言,有像 Lisp 这样真正的宏,也有像 Matlab 这样的浅显熟悉的数学符号。我们想要一门像 Python 一样可用于通用编程,像 R 一样易于统计,像 Perl 一样自然地用于字符串处理,像 Matlab 一样强大的线性代数,像 shell 一样擅长将程序粘合在一起的语言。它简单易学,却能让严苛的黑客为之倾心。我们希望它是交互式的,具备可编译性。

不过,通过调查数据显示,Julia 在竞争愈发激烈的技术圈中,排名有所下滑,一年前 Julia 徘徊于 TOP 20 的边缘位置,位于第 24 位,但在本季度中它跌至第 28 位。值得注意的是,排名越低,语言之间的*对差异变得越小,但是对于一种语言而言,这样的负面表现并不令人鼓舞。

对此,RedMonk 深入分析 Julia 语言下滑的原因时发现,在 Julia 发展过程中,由于其非常注重分析等功能的构建,Julia 经常被开发者列入与 Python、R 等常用统计分析工具的竞争中,其中 Python、R 语言早已在各种实践中证明了自己的受欢迎度与可持续性,此时,新兴 Julia 语言的加入就有些黯然失色了。在此,也希望获得新一轮融资的 Julia 在未来会有亮眼的特性出现。

完整的榜单:

%title插图%num

图 RedMonk Q3 编程语言排行榜

参考来源:

The RedMonk Programming Language Rankings: June 2021