Stack Overflow 年度开发者调查是面向全球开发者进行的规模最大、最全面的调查,调查涵盖了从开发者喜爱的技术到工作偏好等内容。2022 年是 Stack Overflow 发布年度开发者调查报告的第十二年,有来自 180 个国家 / 地区的 73000 多名开发人员参与了这个调查。
其中,依旧是来自美国和印度的受访者数量最多,其次是德国和 UKI(英国和爱尔兰);仅有 632 份调查反馈来自中国开发者,占比为 0.88%。此次调查的一些亮点内容如下:
- 在线学习编程的比例从 60% 上升到了 70%,45 岁以上的受访者喜欢从书本上学习知识,年轻人(18 岁以下)依赖在线学习与资源。
- Docker 似乎正在成为专业开发人员的基本工具,从 55% 增加到 69%。
- Rust 已连续第七年成为最受喜爱的语言,87% 的开发人员表示他们希望继续使用它。
- Phoenix 取代 Svelte 成为最受欢迎的 Web 框架。Angular.js 连续三年成为开发者最讨厌的框架,React.js 连续五年成为开发者最想学习的框架。
- Docker 和 Kubernetes 分别位列最受喜爱和想要学习的工具第一和第二位。大家想要使用 Docker 的意愿似乎并未放缓,从去年的 30% 增加到了今年的 37%。
- Clojure 仍然是已知最高收入的语言。Chef 开发人员薪水最高,但它也是开发者最不喜欢的工具之一。
- 69% 的受访者从事全职工作,相较去年上升了 4 个百分点。
- 85% 的开发人员表示,他们的组织至少部分是支持远程的。
- 62% 的受访者每天花费超过 30 分钟寻找问题的答案或解决方案,还有 25% 的人每天花费超过一个小时。对于一个由 50 名开发人员组成的团队来说,整个团队每周花费在搜索答案 / 解决方案上的时间总计 333-651 小时。
最流行的技术
编程、脚本和标记语言
专业开发人员最常用的前五名语言没有变化;JavaScript 连续第十年成为最流行的编程语言。但报告指出,对于那些正在学习编程的人来说,HTML/CSS、Javascript 和 Python 几乎并列成为最常用的语言。还在学习阶段的人比专业开发者更有可能使用 Python(58% 对 44%)、C++(35% 对 20%)和 C(32% 对 17%)。与专业开发人员相比,尚在学习编程的人则更少使用 SQL(38% 对 53%)、TypeScript(15% 对 40%)和 Bash/Shell(19% 对 29%)。
数据库
总体而言,MySQL 依然是最受欢迎的的数据库。但在专业开发者群体中,PostgreSQL(46.48%)已经超越 MySQL(45.68%)夺得了第一名。专业开发者比正在学习编程的人更有可能使用 Redis、PostgreSQL、Microsoft SQL Server 和 Elasticsearch。
MongoDB 在两类群体中的使用比例则相似,且它是初学者群体中第二受欢迎的数据库(仅次于 MySQL)。“这很合理,因为它支持大量的语言和应用开发平台。”
云平台
AWS 仍然是最常用的云平台,Microsoft Azure 超越 Google Cloud 中夺得第二名的位置。
Web 框架和技术
Node.js 和 React.js 是最常用的两种 Web 技术。使用 Angular 的专业开发人员比初学者要多(23% 对 10%),ASP.NET(16% 对 10%)和 ASP.NET Core(21% 对 10%)也是。
其他框架和库
在机器学习方面,TensorFlow 仍然比 PyTorch 更受欢迎,Scikit-learn 紧随 TensorFlow 之后。Flutter 和 React Native 是两个最受欢迎的跨平台工具。初学者比专业开发者更有可能使用 NumPy(43% vs 24%)和 Pandas(35% vs 22%),以及更可能使用 TensorFlow(18% vs 11%)和 Scikit-learn(17% vs 11%)。
其他工具
去年的报告指出,Git 是作为一个开发者的基本工具。但在今年,Docker 似乎正在成为专业开发者的一个类似的基本工具,其占比从 55% 增加到了 69%。
集成开发环境
Visual Studio Code 仍然是所有开发人员的首选 IDE。PyCharm 更多地被初学者使用(26% 对 16%),而 Vim 则更多地被专业开发人员使用(24% 对 16%)。
异步工具
同步工具
操作系统
Windows 是最受开发人员欢迎的操作系统,适用于个人和专业用途。基于 Linux 的操作系统比 macOS 更受欢迎;报告称,这彰显了使用开源软件的吸引力。
最喜爱、最恐惧、最想学习的技术
编程、脚本和标记语言
Rust 连续第七年成为最受喜爱的编程语言,87% 的开发人员表示他们希望继续使用它。
▲ 最喜爱、最恐惧的语言
▲最想学习的语言
数据库
在 Redis 霸榜五年后,PostgreSQL 成功夺得最受喜爱和最想学习的数据库位置。IBM DB2 连续第三年成为最令人恐惧的数据库。
云平台
AWS 不仅是最常用的云平台,也是开发者最受喜爱和最想学习的云平台。
Web 框架和技术
Phoenix 取代 Svelte 成为最受喜爱的 Web 框架。Angular.js 已经连续三年喜爱度垫底,React.js 连续五年成为开发者最想学习的框架。
其他框架和库
Hugging Face Transformers 是最受喜爱的库,Tensorflow 最想被学习的。
其他工具
Docker 和 Kubernetes 分别位列最受喜爱和想要学习的工具第一和第二位。77% 的用户喜欢 Docker,75% 的用户喜欢 Kubernetes;37% 的用户希望使用 Docker,24% 的用户希望使用 Kubernetes。
集成开发环境
Neovim 连续第二年成为最受喜爱的编辑器,Visual Studio Code 紧随其后。不过 Visual Studio Code 是大家最想学习的工具,其次是 Android Studio。
使用过和希望使用的技术
编程、脚本和标记语言
与去年类似,有超过 1 万名 Javascript 开发人员表示希望开始或继续使用 Go 或 Rust 进行开发。
数据库
有 11185 名 MySQL 开发者想使用 PostgreSQL 工作,以及 9520 名 MySQL 开发者想使用 MongoDB 工作。
云平台与 2021 年类似,有大量 AWS 开发人员希望在 Google Cloud 或 Microsoft Azure 中进行开发。
Web 框架和技术
有 12954 名使用 Node.js 的开发人员想要使用 React.js。
高薪酬的技术
编程、脚本和标记语言
数据库
Web 框架
平均而言,2021 年至 2022 年间,工资中位数增长了约 23%。Flow、COBOL、Couchbase 和 IBM Cloud/Watson 的工资同比增幅最大。
此外,与具有相同经验的其他语言相比,PHP 开发人员的薪水仍然过低。