知名软件行业分析公司 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 并驾齐驱。“现在最重要的两个问题是,首先,它是否能保持这个位置,如果是的话,是否有更多的上升空间。”
Chris McKillop 是 Google Fuchsia OS 的负责人兼工程总监,近日他在个人社交媒体上宣布已经从 Google 离职。 在 2016 年,Google 就在 GitHub 上提交了 Fuchsia OS 的代码,也正是在那个时候,Fuchsia OS 进入了大众的视野。Fuchsia OS 是 Google 在 Android 和 Chrome OS 以外的又一个操作系统,但与后两者不同的是,F...
Chrome 100 现已升级为稳定版,适用于 Linux / macOS / Windows / Chrome OS。“Chrome 团队很高兴地宣布,Chrome 100 已推广到 Windows、Mac 和 Linux 的稳定频道。Chrome 100 也被推广到我们新的 Windows 和 Mac 的扩展稳定频道。这将在未来几天/几周内推出。” 新版本的众多变化包括有: 更新 cookie 字符串的解析以允...
本文转载自《Go+ 下个里程碑:超越 cgo,无缝对接 C 语言》,作者许式伟(@xushiwei)是七牛云创始人兼 CEO,创造了 Go+ 语言。 去年(2021年)Go+ 的 slogan 从 “面向数据科学” 的语言升级到了 “面向工程、STEM 教育与数据科学” 三位一体的语言。也就是说,我们希望 Go+ 可以同时被软件工程师、中小学生、数据分析师这...
OpenHarmony 3.1 已正式发布。 当前版本在 OpenHarmony 3.1 Beta 的基础上,更新支持以下能力: 标准系统基础能力增强 本地基础音视频播放能力、视频硬编解码、相机基础预览、拍摄能力。 RenderService新渲染框架、2D/3D绘制能力、新的动画和显示效果框架。 窗口管理新框架,提供更加灵活的窗口框架能力,支持全屏、分屏...
Visual Studio Code 1.66 现已发布,该版本更新内容很多,下面摘录部分新特性作介绍: 本地历史记录 可以在时间轴视图中使用文件的本地历史记录,独立于源代码控制跟踪本地文件更改。根据配置的设置,每次保存编辑器时,都会在列表中添加一个新条目: 每个本地历史的条目都包含创建条目时文件的全部内容, 从条目中可以:...
深度操作系统 20.5 现已发布,升级Stable内核至5.15.24,修复底层漏洞,进一步提升系统兼容性和安全性,功能层面上积极响应社区用户反馈的需求,开发并集成了大量实用功能。 人脸识别 新增人脸识别功能模块,对已适配的设备支持生物认证,提供更多安全解锁方式,在控制中心录入人脸后,在下次登录时可以通过人脸直接登录...
自从红帽宣布 CentOS 将停止更新,并以全新的 CentOS Stream 彻底取而代之;开源社区有关红帽这一举措的疑惑就层出不穷。对此,红帽首席架构师张家驹于近期进行了答疑,对 CentOS 的这一变化进行了解读。 1、 作为红帽企业 Linux(RHEL)的复刻版本,CentOS 曾凭借开源、免费、稳定的特性深受市场喜爱。但红帽方面认为,...
致力于改进 Firefox UI 的 black7375 总结了 Firefox 浏览器的 UI 进化史,记录了每个 UI 版本的特性和存在的一些问题。从该进化历程中,我们也可以一窥互联网的设计美学发展史。 早期版本(v1 ~ v3) 早期版本:Phoenix (2002, 09) 该版本名称一直保留到 2003 年 4 月 ,后来因为与 BIOS 制造商Phoenix 的商标纠纷而更改。...
从 Ubuntu 22.04 LTS 的开始,Firefox 将仅向用户提供 snap 软件包,通过传统方式安装 deb 软件包的方式也将失效,届时所有用户都将被迫使用官方推荐的 snap 版 Firefox。对于目前正在使用 deb 软件包的用户,可以通过更新的方式过渡到 snap,更新后的 Firefox 会从用户的主目录中获取原版本的设置。 在去年 9 月,我们就...
React 18 现已发布,此版本包括开箱即用的改进,如自动批处理,新的 API(如 startTransition)和支持 Suspense 的流式服务器端渲染。 公告指出,React 18 中的许多功能都建立在新的并发渲染器之上,这是一个解锁强大新功能的幕后更改。Concurrent React 是可选的,它仅在用户使用并发功能时启用,但开发团队认为它将会对...