全栈算力,加速行业AI落地 了解详情
写点什么

RedMonk 最新编程语言排名:JS 占据统治地位,Ruby 持续下滑,Dart 上升名次最大

  • 2021-03-05
  • 本文字数:2600 字

    阅读完需:约 9 分钟

RedMonk最新编程语言排名:JS占据统治地位,Ruby持续下滑,Dart上升名次最大

近日,RedMonk公布了最新的编程语言排名,JavaScript 排名第一,Python 和 Java 分别排名第二、第三。



2021 年 1 月编程语言总体排名


排名前 20 的编程语言(并列语言按字母顺序排序):


  1. JavaScript

  2. Python

  3. Java

  4. PHP

  5. C#

5.C++

5.CSS

  1. TypeScript

  2. Ruby

  3. C

  4. Swift

  5. R

  6. Objective-C

  7. Shell

14.Scala

  1. Go

  2. PowerShell

  3. Kotlin

  4. Rust

19.Perl


RedMonk 官方在博客写道,上次统计排名中,前 20 名编程语言的排名相当稳定。对综合指标来说,这样的结果很平常。但是本季度,最终排名发生很大的变化。前 20 名编程语言,有一半经历一定程度的波动,这非常不寻常。


很难把这种现象明确地归因于某种更高层面的宏观趋势,但这样的数据与一个行业是相吻合的:整个行业已经从疫情爆发初期的大封锁造成的混乱中开始恢复过来,此前的两个季度里,大家逐渐习惯了新形势。


如果这种趋势持续下去,那么它会演变成巨大的影响。


值得一提的是,Python 保住了第二名位置。Java 紧随 Python 之后,与后者的差距比自己与身后的 PHP 之间的差距更小——但是 Python 捍卫其排名新纪录的实力还是给人留下了深刻印象。


本期排名中最重要的几大要点(括号中的数字是自上期以来语言排名的净变化)


  • JavaScript(0):本文关注的主要是变化,因此讨论 JavaScript 似乎没什么意义,毕竟 JavaScript 的排名没有变化。但值得注意的是,JavaScript 的影响力还是那么稳固。尽管有来自众多新兴语言的竞争压力、关于 JS 碎片化的所有讨论,甚至有对 JavaScript 语言本身的批评,它仍然非常受欢迎。以数据为例,自 2018 年 1 月第一季度的排名以来,JavaScript 拉取请求增长了 453%。仅从上一季度到现在,这个数字就增长了 96%,这还是基于相当庞大的提交基础获得的增幅。简而言之,JavaScript 仍然(尽管存在负面因素)占据着统治地位,这一点在业内没有其他选手能比拟,并且数据中没有迹象表明这种情况很快就能改变。

  • TypeScript(1):谈到 JavaScript 的影响力,TypeScript 在我们的排名中名次继续上升。这样的结果令人印象深刻。Swift 是最近唯一能前进到 10 名以内的新语言,但也只待了一个季度,然后就退回了 11 位,自 2018 年以来名次一直保持相对稳定。TypeScript 面临的最初问题是它是否能够坚持下去。现在更常见的问题是这种语言的最终上限能到什么级别。TypeScript 在最近的八个季度排名中有 6 次上升,在整个行业中,它的受欢迎程度显而易见。而与它增长势头同样有趣的话题是,它的成长抢了谁的饭碗。

  • Ruby(-2):以前我们就讨论过,Ruby 的势头长期处于下降状态,只不过趋势比较温和。但从本季度的排名来看,它是否还能温和下滑已经是个问题了。当我们在 2012 年开始做排名时,Ruby 是名次第五的最受欢迎语言,并且这一水平保持了五年左右。但自 2016 年以来,Ruby 一直在逐渐下滑,本季度它已被 CSS(是的,我们知道你们中的许多人不认为它应该参与排名)和上面的 TypeScript 都超过了。近年来,Ruby 一直在努力解决它存在的一些性能问题,但且不说他们的宣传与实际成果有多少一致,对性能的这种关注似乎并没有改变从我们的排名中反映出来的命运。需要明确的是,Ruby 所处的第 9 位名次对于几十乃至几百种语言来说都是非常好的成绩了,但 Ruby 的用户和粉丝更应该关心的不是它的排名而是它的趋势。这是一门可爱的语言,语法优美,但在竞争激烈的语言市场中实力还远远不够。

  • Go(-1):与 Ruby 一样,Go 的排名相比其趋势来说也并不值得关注。经过早期的快速增长之后,Go 在 2018 年排名第 14 位,那也是它的巅峰时刻。之前,Go 一直是排名最稳定的语言,基本看不出下滑趋势。但这次的排名之所以会是这样,Go 相对其他一些语言更为狭窄的市场定位应该可以解释一部分原因。作为后端应用程序组合的主要竞争对手,Java 仍然是一种至关重要且使用率很高的语言,经过这么多年的流行也并没有消失淡出,这对 Go 来说并不是好事情。但不管它的地位是稳固的还是开始衰落,如果 Go 雄心勃勃想要成为真正的行业主导力量,那么它的路径和结构可能需要做一些改变了。

  • R(1):我们经常会讨论 R 的命运这一话题。R 的学术标签非常明显,只在单个领域(分析)中表现出色,并且在这一领域之外基本没有存在感。看到 R 和其他几种语言,很容易冒出一个问题:在当今碎片化的世界中,一种用途特殊的语言会有怎样的命运?它会走上多高的山峰,或者落到怎样的境地?通常,专用语言的表现比不上通用语言——就像上面提到的 Java 与 Go 的对比。但是,R 是这条规则的例外。尽管它从未经历过爆发式或线性增长,但在许多年前我们开始做排名时,这种语言的名次才是第 17 位。这太有趣了;更重要的是它超越了 ObjectiveC(-2)来到了今天的 12 位。自前十常客 Objective C 的指定继任者 Swift 诞生以来,前者的名次一直在缓慢下滑。不管怎样,看到一种专注于统计分析的语言名次能超越 2014 年前绝大多数 iOS 应用的编写语言,还是很令人震惊的。

  • Kotlin(1)/Rust(1):Kotlin 和 Rust 之间没有真正的联系,只是它们之间存在一定的功能重叠。Kotlin 是一种基于 JVM 的语言,具有现代语法,可以与 Java 自由混合;Java 是一种具有良好后端应用实力的语言,但它也是 Android 上的一等公民。Rust 是一种安全意识很强的语言,已被 Mozilla 等组织广泛使用,但也经常被认为是 Go 的替代语言。说到 Mozilla,他们将所有 Rust 商标和基础设施资产转移到了新的 RustFoundation,也就是这种语言的管理组织。该语言还得到了 AWS、谷歌、华为和微软的支持。Kotlin 和 Rust 的共同点是,它们在开发人员中的受欢迎程度让它们在本季度排名中都上升了一个位置——Rust 排名第 19,Kotlin 排名第 18。迄今为止,Kotlin 一直处于领先状态,但 Rust 新的专职基金会是否会完全改变这种情况是值得关注的。

  • Dart(3):不到三年前,Dart 一直处于低迷状态,徘徊在 30 名开外。但在 Flutter 框架推出两年后,Dart 排名上升了 3 位,排在我们的前 20 名之外。当时人们质疑 Dart 是不是已经来到了巅峰,但本季度的成绩否定了这种质疑。显然,Flutter 对这种语言的流行程度产生了实质性的影响,它可以编译为世界上最受欢迎编程语言的能力同样是一项优势。虽然排到 21 位已经是很难的成绩了,但本季度 Dart 大幅上升的名次使我们产生了期待,可以观察一下 Dart 接下来是否能跻身前 20 名,如果能做到的话过程中又会发生什么事情。


说明:


说明:RedMonk 编程语言排名是由 MongoDB 发布,每季度发布一次。RedMonk 排名最早始于 2010 年末。流程:从 GitHub 和 Stack Overflow 提取编程语言排名,然后将两份排名结合在一起,试图同时反映编程语言在代码(GitHub)和讨论(Stack Overflow)两方面的名次。

2021-03-05 15:327371
用户头像
万佳 前InfoQ编辑

发布了 677 篇内容, 共 337.6 次阅读, 收获喜欢 1795 次。

关注

评论

发布
暂无评论
发现更多内容

TDSQL已助力20余家金融机构完成核心替换

腾讯云数据库

tdsql 国产数据库

TDSQL | 深度解读HTAP系统的问题与主义之争

腾讯云数据库

tdsql 国产数据库

2020 国内互联网公司的Android工程师薪酬排名!看看你是什么水平

android 程序员 移动开发

2020Android 开发年度总结:“这一年里我到底做了些啥,面试阿里的时候一定会问到的

android 程序员 移动开发

2020一个Android大牛的面试经历分享(金九银十面试30多家公司)

android 程序员 移动开发

2020你与字节跳动只差这份笔记,我靠着这份笔记,工资从15K到了40K

android 程序员 移动开发

TDSQL将发布免费版本,助力国产数据库生态完善

腾讯云数据库

数据库 tdsql

2020你与字节跳动只差这份笔记,我靠着这份笔记,工资从15K到了40K(1)

android 程序员 移动开发

超简单教程!自动部署openLooKeng

openLooKeng

大数据 计算引擎 openLooKeng 安装部署

浅析openLooKeng安全认证机制

openLooKeng

大数据 ldap openLooKeng 安全认证

助力邯钢工业4.0!TDengine在深度(平潭)节水减排项目中的应用

TDengine

数据库 tdengine 后端

2020 更新 - 腾讯 Android 面试 (已拿到月薪22K offer)

android 程序员 移动开发

2020上半年百度Android岗(初级到高级)面试真题全收录

android 程序员 移动开发

双11在即,分享一些稳定性保障技术干货

老张

系统稳定性 大促 生产环境全链路压测

用一套代码实现APP和小程序

Speedoooo

容器 移动开发 ios开发 APP开发 Andriod开发

新版本发布!openLooKeng v1.4.0上线

openLooKeng

大数据 计算引擎 openLooKeng

使用JPA + Eclipselink操作PostgreSQL数据库

Jerry Wang

eclipse 数据库 11月日更

实用推荐系统:寻找有用的用户行为

博文视点Broadview

2020 年需要关注的 5 大 Android 开发技术(1),Android知识总结

android 程序员 移动开发

2020Android-目前最稳定和高效的UI适配方案!你头秃都没想到还能这样吧!

android 程序员 移动开发

2020Android面经,历时一个半月,斩获3个大厂offer,移动端开发工程师面试题

android 程序员 移动开发

JPA + EclipseLink + 云平台 = 运行在云端的数据库应用

Jerry Wang

数据库 Cloud Cloud Native 11月日更

飞鹤乳业数智化转型之路

大咖说

云计算 数字化转型 数字化 企业上云

恒源云(GPUSHARE)_U1S1,1年1度GPU云种草大会

恒源云

深度学习

模块三作业

doublechun

「架构实战营」

2020-Android-面试重难点(万字篇),android屏幕适配的五种方式

android 程序员 移动开发

2020Android开发者学习路线(快速篇),分析android进程管理机制

android 程序员 移动开发

云上远程运维的最后那点担心,“云梯”帮你解决

华为云开发者联盟

运维 华为云Stack 远程运维 安全可信 云梯

教你如何在Spark Scala/Java应用中调用Python脚本

华为云开发者联盟

Java Python spark JVM Spark Scala

【Java原理剖析系列】深度synchronized工作原理分析

洛神灬殇

java 11月日更

硬核干货!TDSQL全局一致性读技术详解|

腾讯云数据库

tdsql 国产数据库

RedMonk最新编程语言排名:JS占据统治地位,Ruby持续下滑,Dart上升名次最大_编程语言_王强_InfoQ精选文章