欢迎阅读
《2024 开发者生态系统现状报告》

每年,我们都会发布《开发者生态系统现状报告》,展现开发者的世界。这一次,我们进行了精简,在一个网页上列出重点,汇集研究中最引人注目的洞察。如果您想深入了解,可以下载完整的原始数据。

基于全球 23,262 名开发者的回复,本报告将清晰透彻地展现庞大而多样的开发者群体。我们的目标是分享开发者最关心的问题,从开发者所依赖的编程语言、工具和技术,到影响行业发展的关键问题。

今年,我们将继续探索开发者在各个领域对 AI 的看法。剧透:对 AI 的恐惧似乎正在减少!我们还将深入研究职业和就业趋势、领域多样性,甚至对业界最近大规模裁员的一些洞察。

这是一份公开报告,内容仅可用于非商业用途。在此处了解完整详细信息。

分享:

往期开发者生态系统报告:

重要发现

过去 12 个月,您使用过以下哪种(哪些)编程语言?


编程、脚本和标记语言的使用


JavaScript 是最常用的编程语言


61%的全球开发者使用 JavaScript 创建网页。

舒适区

一旦开发者选择生态系统,他们通常就不会再计划采用其他技术或工具包。通常,人们倾向于选择自己喜欢的东西并持续使用自己熟悉的东西。

编程、脚本和标记语言




Go 和 Rust:采用最多的语言

大多数受访者计划采用的语言显然是 Go 和 Rust。这两种语言在构建时都考虑到了性能和并发性,并有编译器安全保证以帮助减少 bug。

不过,虽然 Rust 的受欢迎程度在不断提高,Go 开发者的比例仍然保持稳定。



Rust 会取代 C++ 吗?

在今年最受欢迎的语言中,唯一创造新使用记录的语言是 Rust。Rust 的用户群在过去五年中稳步增长,有望凭借其严格的安全性和内存所有权机制取代 C++。根据我们的数据,有六分之一的 Go 用户正在考虑采用 Rust。



JavaScript 和 TypeScript

JavaScript 仍然是世界上最受欢迎的编程语言,拥有庞大的开发者社区和丰富的资源。不过,TypeScript 正在迅速获得关注。它的采用率已从 2017 年的 12% 飙升至 2024 年的 35%

我应该在 2025 年学习 TypeScript 吗?

临近 2025 年,学习 TypeScript 可以在代码可靠性、可维护性和现代开发做法方面带来显著优势。无论您是经验丰富的开发者还是刚刚起步的新手,将 TypeScript 整合到技能组合中都会是一项有价值的职业投资。

TypeScript 相对于 JavaScript 的 5 个优点:

开发期间的早期错误检测

更高的代码质量和更容易的长期维护

编译时错误捕获

更可靠、更不容易出错的重构

原生支持 ES6 模块,有助于实现井然有序的编码



TypeScript 会取代 JavaScript 吗?

最简短的答案是“不”!JavaScript 是软件开发行业中最流行和最基本的技术之一,可以肯定地说,它不会很快消失。

虽然 TypeScript 因其增强的功能和优势而越来越受欢迎,但 JavaScript 的广泛采用度、简洁性和强大的生态系统确保它仍然是 Web 开发的重要组成部分。TypeScript 不会取代 JavaScript,而是更有可能继续与 JavaScript 共存,为开发者提供符合其项目需求和偏好的另一种选择。

JetBrains Language Promise Index


在去年的报告中,我们概述了 TypeScript 和 Rust 等语言的发展前景,并预测 JavaScript 的占比将继续下降。这两个预测都得到了验证。虽然 JavaScript 用户的百分比没有变化,但将其作为主要语言的用户下降了 2 个百分点。

今年,我们决定更进一步,向公众推出一项新指数 – JetBrains 语言前景指数。此指数基于过去五年的受众增长、增长的稳定性、表示有意采用语言的人数比例以及希望采用其他语言的用户比例。JetBrains Language Promise Index 无可争议的领先者是 TypeScript、Rust 和 Python。

七年前我们第一次进行调查时,Python 占 32%(几乎与 PHP 的 30% 持平),而现在全球超过一半的程序员都在使用 Python。

技术

您是否开发应用程序?如果开发,最终用户应用程序在哪执行?


桌面与移动开发

虽然有些人认为移动开发比桌面开发更为普遍,但我们的数据显示,桌面应用程序开发比移动高出 6 个百分点。这挑战了“移动已经超越桌面”的观点,证明桌面对许多开发者来说仍然必不可少。

平台使用率:浏览器、桌面和移动

根据调查,58% 的开发者在浏览器平台上运行代码。桌面紧随其后,为 53%,显示出其持续的重要性,尤其是对于需要更多功能或专业工具的任务。移动为 30%,虽然仍在增长,但尚未赶上桌面的使用率。

您的代码在哪种(哪些)平台上执行?


您的代码实现哪项具体功能?


区块链最近受到了很多关注,但我们的数据显示,这项技术实际上并不具备太大吸引力 – 只有 3% 的开发者将其作为目标。

18%的开发者参与构建与 AI 的集成,表明 AI 正在稳步渗透到已开发的软件中。

按主要编程语言划分的代码功能


哪些编程语言用于人工智能 (AI) 和机器学习 (ML)?

AI 和机器学习最常用的编程语言是 Python。作为第二大最受欢迎的编程语言,Python 拥有丰富的库(例如 TensorFlow、Keras、PyTorch 和 scikit-learn)和强大的社区支持。

相当一部分 C++ 开发者表示,他们积极参与 AI 和机器学习。

您开发哪种(哪些)类型的软件、产品或服务?


按主要编程语言显示的软件类型


您开发哪种(哪些)类型的网站?


由于 Playwright、Selenium、JetBrains Aqua 等工具,复杂的测试场景比以往更加简单。

您在项目中使用哪种(哪些)类型的测试?


您在项目中使用哪种(哪些)类型的测试?


过去 12 个月,您使用过哪种(哪些)数据库(如果有)?


近年来,数据库的受欢迎程度一直相当稳定。开源数据库(MySQL、PostgreSQL、MongoDB、SQLite 和 Redis)在我们的生态系统中占开发者所用存储选项的主导地位。

推动业务发展的主要数据库似乎已经很成熟,很少有组织会更换已经采用的数据库。

您最常使用哪种云服务?


您在开发过程中是否使用虚拟化或容器?


开发者体验

贵公司是否衡量开发者体验和开发者效率(无论是个人还是团队)?


在您的公司中谁负责开发者体验和开发者工作效率工程?


什么是开发者体验?公司关心它吗?

开发者体验(DevEx 或 DX)是指开发者在与软件开发工具、流程、环境和平台交互时体验到的整体满意度和工作效率感受。

由于开发者体验与软件开发交付的有效性密切相关,这一话题近来日益受到关注。公司正在加大力度评估 DevEx 和开发者工作效率,旨在更好地了解影响它们的因素。开发者表示,技术因素和非技术因素对其开发者体验的影响几乎同等重要。

近一半的技术经理表示,他们所在的公司会衡量开发者工作效率、DevEx 或同时衡量这两项,16% 的公司有专门的专家负责开发者工作效率工程和开发者体验。

AI

您曾经使用或尝试过以下哪种(哪些)AI 工具进行编码和其他开发相关活动?


有多少开发者在编程时使用 ChatGPT 或 Copilot?

69%的开发者尝试过 ChatGPT,49% 经常使用 ChatGPT 进行编码和其他开发相关活动。GitHub Copilot 是第二受欢迎的开发者 AI 工具,有 40% 的受访者尝试过,26% 经常使用。

显然,许多程序员对 AI 有些了解,但只有时间才能证明这种新兴工具是否会被长期接受。

贵公司对在编码和开发相关任务上使用第三方基于云的 AI 工具(例如,ChatGPT、GitHub Copilot 或 Google Gemini)的政策是什么?


有多少公司禁止或限制 AI?

大多数公司(近 80%)要么不同程度地允许使用第三方 AI 工具,要么没有制定政策。只有 11% 的组织完全禁止使用第三方基于云的 AI 工具。

这表明对 AI 的恐惧正在逐渐消退。

使用 AI 工具进行编码和其他开发相关活动可以获得哪些好处?


平均而言,您认为使用 AI 工具进行编码和其他开发相关活动每周可以节省多少时间?


您是否使用虚拟现实 (VR) 头戴设备进行编码?如果使用,已使用多长时间?


使用 VR 头戴设备编写代码

8%的开发者尝试过使用虚拟现实 (VR) 编写代码,近 50% 渴望尝试。

阻碍开发者采用 VR 编码的最常见障碍包括设备的高昂成本以及对其益处的不确定。此外,18% 的开发者会因长时间使用 VR 而感到身体不适或有相关健康顾虑。

您为什么使用 VR 头戴设备进行编码?


开发者生活

您将多少工作时间花在直接涉及代码的活动上?


您将多少工作时间花在会议、工作相关交流和电子邮件上?


工资

各地区工资中位数(美元)


薪资范围(美元)


按编程语言显示的高薪员工比例

注:高薪员工是指薪资在所在国家或地区处于前四分之一的员工。


收入最高的编程语言有哪些?

薪资最高的编程语言是 Scala、Go、Kotlin、C++、Rust、C、Shell、JavaPython。

但是,薪资并不仅仅由语言决定。工作角色很重要!例如,Shell 脚本属于薪资最高的类别,因为它被 DevOps 工程师大量使用,而 DevOps 工程师的薪资通常更高。

有关科技行业工资的更多详细信息,请查看我们的工资计算器

按性别显示的高薪员工比例

注:高薪员工是指薪资在所在国家或地区处于前四分之一的员工。


您是否曾经将职业转型到技术或 IT 领域?


科技行业有多少转行者?

在参与我们调查的软件开发者中,22% 先前曾在不同的行业工作过,这表明业界对来自不同背景的专业人士具有亲和力和吸引力。对于转行者来说,最重要的是专注于在核心编程语言和软件开发原则方面打下坚实基础。通过项目、实习或编码训练营获得实践经验有助于促进这一重大人生转变。

以下哪种教育机构或资源让您迈出了成为开发者的第一步?


受众特征

您有多少年的完整专业编码经验?


您的性别是?


我们从 2021 年开始跟踪开发者的性别分布。此前,女性开发者的比例一直保持在 5%,但今年上升了 1 个百分点!我们希望这是一个充满希望的信号,预示着科技界的女性将获得一个更加包容的未来。

Khalid Abuhakmeh

.NET 技术布道师

遗憾的是,软件开发行业迄今为止在性别多样性方面表现不佳,导致有意义的观点无法为创意过程做出贡献。我希望未来我们能做得更好。

您的性别是?


女性在科技行业中占多大比例?

平均而言,女性占科技劳动力的 6%,但这一比例在不同地区有所不同。

韩国和阿根廷在女性比例方面处于领先地位。今年,我们又提出了一些问题,以更好地了解女性在行业中面临的挑战,相关答复也存在很大差异。在阿根廷,没有一名女性表示在工作中遭遇过不尊重或轻视的行为或不当的身体接触。而在中国和印度,女性开发者比例极低,超过四分之一的女性表示在过去一年中遭遇过这些问题。

数据表明,女性在科技界的比例与负面经历的普遍性之间存在潜在负相关。女性比例较高的地区,如韩国和阿根廷,似乎拥有更积极的工作环境。

您处于什么年龄段?


您处于什么年龄段?


各地区年轻开发者占比(18-29 岁)


大多数国家/地区的年龄分布相似,年轻开发者占总数的 40%–50%

开发者最年轻的地区是印度与中东、非洲和中亚。

日本的老年专员数量最多、年轻专员的比例最低。这与该地区的人口老龄化和行业发展情况高度相关。

您目前居住在哪个国家或地区?

注:报告根据我们对 Data Playground 中显示的各个国家/地区专业开发者数量的估计进行加权


贵公司或组织有多少人?


贵公司或组织有多少人?


贵公司或组织中大约有多少人编写代码(百分比)?


贵公司或组织中大约有多少人编写代码(百分比)?


贵公司或组织参与哪种(哪些)类型的开发?


内部开发仍然非常流行,这让我相信世界上每家公司都是一家科技公司,无论它是否认为自己是科技公司。

Khalid Abuhakmeh

.NET 技术布道师

贵公司或组织主营以下哪个(哪些)领域的业务?


26%的开发者表示自己在创业公司工作,6% 表示自己为政府机构工作。值得注意的是,一些自称受雇于创业公司的受访者在拥有超过 1,000 名员工的公司工作。这不禁让我们质疑“创业公司”一词的准确定义,以及该如何衡量一家公司是否已超越这一分类。

以下哪个(哪些)选项能够最贴切地描述贵公司或组织?请选择所有适用项。


您的项目团队中有多少人?


软件开发团队的平均规模有多大?

在接受调查的开发者中,有一半在 2–7 人的小团队中工作,88% 表示在 20 人以下的团队中工作。

游戏开发者是一个独特的群体。虽然许多游戏开发者是作为爱好者独立工作,但他们也比其他开发者更有可能在超过 40 人的大型团队中参与协作。

过去一年中,您在科技行业中是否遇到过以下情况?



调查方法

我们在 2024 年 5 月至 6 月期间进行了调查。本报告基于 23,262 名开发者在数据清理后提供的意见。我们根据回复来源对数据进行加权。我们以不太偏向 JetBrains 用户的外部来源的回复为基础。然后,我们根据地理位置、就业状况、编程语言和 JetBrains 产品使用情况对数据进行加权。

尽管采取了这些措施,可能仍存在一些偏倚,因为平均而言,JetBrains 用户可能更愿意完成调查。

点击此处深入了解我们的调查方法


原始数据

想亲自深入了解结果吗?下载匿名调查回复,看看您能发现什么!

本报告仅涵盖主要亮点,但原始数据包含全部 600 余个调查问题。

我们的产品不受限于具体技术,并支持您的团队和项目现在或将来可能使用的多种语言和其他工具。

VB.net

Java

Kotlin

Android

JavaScript

TypeScript

PHP

C#

Python

Go

HTML

Scala

探索并找到合适的 JetBrains 工具

加入 JetBrains Tech Insights Lab

参与调查和用户体验研究,让 JetBrains 产品变得更好。参与我们的研究,您还将有机会获得奖励。

注册

感谢您的参与!

我们再次感谢感谢每一位调查参与者。您的贡献将帮助我们了解开发者社区!

与您的朋友和同事分享这份报告

如果您有任何疑问或建议,请发送电子邮件至 surveys@jetbrains.com

查看其他行业报告