找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

5164

积分

1

好友

710

主题
发表于 昨天 03:44 | 查看: 21| 回复: 0

知名开发者社区 Stack Overflow 每年都会进行年度开发者调查。在最新一期调查中,有超过65000名来自全球的程序员参与,其地域分布如下图所示:

全球开发者参与调查地域分布图

从地图上的标记点来看,美国、印度、加拿大、西欧各国以及巴西的参与者众多。相比之下,中国的参与者数量比预期要少,甚至不及伊朗、土耳其、巴基斯坦等国。这或许与语言障碍及网络环境有关。

调查中有几个关于编程语言的有趣指标,分别是“最喜爱”、“最畏惧”和“最想学习”的语言。程序员们通过投票表达了自己的真实态度。

最受喜爱的编程语言 Top 10

首先来看“最喜爱”的编程语言排名。这里的百分比含义是:在使用某种语言的开发者中,有多少比例的人希望继续深入学习和使用它

最受开发者喜爱的编程语言排名条形图

结果令人意外,Rust 以高达86.1%的比例位居榜首。这门语言竟有如此大的魅力?笔者曾写过文章吐槽其严苛的语法(《自从我学了Rust,就开始了受虐之旅,连编译都没成功过!》)。不过,Rust 确实有其不可替代的优势:

  1. 性能极快
  2. 运行时(Runtime)非常小(相比之下,JVM这类虚拟机就是一个庞大的Runtime)。
  3. 能直接、安全地访问内存

传统的 C/C++ 能满足前两点,但内存安全性不足;而 Java、Python、Ruby 等语言除了内存安全,前两点表现一般,更适用于应用层开发。Rust 则同时满足了系统级编程的这三个核心需求。尽管其概念有些独特,但从调查来看,它依然赢得了大量开发者的青睐,愿意持续投入学习。

TypeScript 和 Python 分别以67.1%和66.7%紧随其后,这可以理解。前者是JavaScript的静态类型超集,对追求类型安全的开发者吸引力巨大;后者则因编写小工具快捷方便、生态丰富而备受推崇。

最令开发者畏惧的编程语言 Top 10

接下来是“最畏惧”的语言排名,其百分比含义是:在使用该语言的开发者中,有多少比例的人不想再继续学习它了

最令开发者畏惧的编程语言排名条形图

VBA 以80.4%的“劝退率”高居榜首。Objective-C 以76.6%位列第二,或许是因为开发者群体正向 Swift 迁移。Perl、PHP、C++ 等常年被吐槽的语言上榜并不意外。

但令人惊讶的是,Java 和 Ruby 也进入了前十,分别排名第九和第七。具体来说,有55.9%的Java 开发者表示想“抛弃”Java

这不禁让人疑惑:Java 不是常在 TIOBE 等编程语言排行榜上位列第一吗?它拥有庞大而丰富的生态,海量的开源框架与工具,世界上无数关键系统由其构建,再加上强大的 JVM。尽管语法略显冗长,但 Java 在保持向后兼容的同时一直在稳步进化。为何会沦落到被过半使用者“嫌弃”的地步?

O‘Reilly 的 Mike Loukides 曾在一篇文章中总结了几个可能的原因:

  1. 基数效应:Java 的使用者基数巨大,其中总会有一部分人不喜欢它。正如 C++ 之父 Bjarne Stroustrup 所言:“世界上有两种编程语言,一种是被人吐槽的,一种是没人用的。”
  2. 坏味道的编码习惯:围绕 Java 形成了一些令人不悦的编码风格,例如 excessivelyLongClassNameBecauseThatsHowWeDoIt(过度冗长的类名),以及滥用设计模式产生的 FactoryFactoryFactory。这类代码容易引起反感。
  3. 遗留系统的负担:Java 已诞生二十余年,并自诩为企业级应用语言。因此,Java 开发者更常面对大型、处于维护状态的遗留系统。这些系统采用老旧的技术和框架,代码质量可能堪忧,且文档匮乏甚至缺失。长期在“屎山”代码中穿行,会极大消耗开发者深入钻研技术的热情。

Ruby 的式微

同样,调查显示有57.1%的 Ruby 开发者不再想深入学习它。在笔者的印象中,大多数用过 Ruby 的程序员都会爱上它的简洁、优雅以及强大的元编程能力,能写出令人惊叹的代码。

Ruby 的崛起与 Ruby on Rails (RoR) 框架密不可分,RoR 曾是 Web 2.0 时代开发的神器,堪称 Web 编程的 DSL。然而,如今早已进入移动互联网时代,移动端是 iOS 和 Android 的天下,后端则更追求高性能和强大的扩展性,Ruby 在这些方面显得力不从心。因此,许多后端开发转向了 Go、Node.js 等语言。

当然,Ruby 社区也在求变,例如 Elixir 语言便是由 Ruby 社区的人创建,旨在用 Ruby 的风格编写 Erlang 风格的代码,并运行在 Erlang VM 上以获得高性能。这是一个非常巧妙的组合,可惜生不逢时,面对众多强大的竞争者,难以再现当年 RoR 的革命性影响力。


本文仅从个人角度对 Stack Overflow 的这项调查结果进行解读。该调查还包含了最受欢迎框架、开发者年龄分布等更多维度的数据。感兴趣的朋友可以前往 Stack Overflow 官网查看更多详情:https://insights.stackoverflow.com/survey/2020

技术潮流变迁迅速,开发者的偏好也在不断流动。无论你是坚守 Java 生态,还是尝试拥抱 Rust 等新锐语言,保持学习与开放的心态至关重要。欢迎来到云栈社区与更多开发者交流技术趋势与实战心得。




上一篇:技术大师的中年创造:盘点编程语言发明者的黄金年龄与行业思考
下一篇:OPPO离职福利解析:主动离职N+1、年终奖照发背后的“本分”文化
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-4-7 16:58 , Processed in 0.715962 second(s), 42 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表