3bd1700c64194f597334e85930c8bff9.gif

整理 | 苏宓

出品 | CSDN(ID:CSDNnews)

技术更新迭代的速度,让很多开发者被动地开启了奋起直追的模式。但是在某些领域或技术层面,也永远不要小看技术人的「念旧」情结,譬如 2009 年发布的 Windows 7、2014 年发布的 Java 8 在当前技术圈中仍占据不小的份额。

近日,美国软件开发商 Perforce Software 旗下的 JRebel 品牌在对近千名专业的 Java 开发者调研后,重磅发布了《2022 年 Java 开发者生产力报告》。据调查显示,我们有以下最新发现:

  • 八年前发布的 Java 8 依然是 Java 中应用最广泛的版本,占比 37%,其次是 Java 11;

  • Oracle 的 Java 发行版最受欢迎(36%),其次 27% 受访者使用通用OpenJDK Java。

  • Docker 是最常见的虚拟机平台,41% 的开发者使用它。26% 的受访者使用 Kubernetes,其次是 VMware,占 16%。

  • Apache Tomcat 是迄今为止最受欢迎的 Java 应用程序服务器,使用率为48%,其次是 JBoss / Wildfly,占 15%。

  • JetBrains 的 IntelliJ 是最受欢迎的 Java IDE,占 48%,其次是 Eclipse,占 24%,Visual Studio Code 占 18%。

4bbc0cb6426f38593cbcc7e356c6cf60.png

2a76410220d1f1b91715236953ce8634.png

Java 开发趋势:Java 8 最受欢迎,Java 17 奋起直追

众所周知,Java 8(2014 年 3 月发布)和 Java 11(2018 年 9 月发布)都是长期支持 (LTS) 版本,它们获得了 Oracle 几年的产品支持。对于一些如 Java 9、Java 10、Java 12 到 Java 15 的非 LTS 版本,Oracle 只提供六个月的支持。

八年前发布的 Java 8 依然最流行

因此,当被问及在主要应用程序员中使用哪种 JDK 时, 有 37% 的受访者回答了 Java 8,其次 29% 的开发者在使用 Java 11。另外,有 8% 的开发者使用了与 JVM 兼容的 Kotlin,6% 的受访者使用 Groovy 和 Scala 占比 3%。

d3cc26dd9a53dd46433bd5569a4a31d3.png

当进一步了解使用 Java 不同版本背后的公司规模时,我们发现 Java 8 在 100 人以下的公司中使用率要稍低一些,和往年相对比,Java 11 及以上版本使用率有所增加,占比 30%。

87704a480e56c07d0317b9fa609e8d16.png

与此形成对比的是,拥有 100 名以上员工的公司应用 Java 8 要更多一些,占比 39%。究其原因,主要是因为大厂在生产环境中接受新版 Java 非常困难,有时并不是改几行代码就能解决的事情,测试、迁移、兼容性等都是需要解决的问题,况且很多系统并不会为了单纯的 JDK 升级而升级。

为什么很多开发者选择更换 Java 版本?

这不,也正如调查数据显示,有 25% 的开发者表示长期支持是升级 JDK 最主要的原因。

除了 LTS 之外,安全和性能是最主要的因素,分别为 23% 和 20%。

b6d513783ab024d87287c32c810c7335.png

不过,近几年,随着 Oracle 将 Java 的更新频率改变,很多大小公司并不会太着急选择将 Java 版本升级,大概率会跟着 LTS 版本走。

37% 开发者计划未来六个月升级到 JDK 17,小公司速度更快

当提及大家还要在 Java 8 版本上坚持多久,才会去应用最新版本 Java 17 ?

近四成开发者表示计划在未来 6 个月内升级到 JDK 17,25% 计划在未来 6-12 月内升级。不过,也有 8% 的受访者称不打算升级到 JDK 17。

33fdb002bf589fb2ad37f7cd266b3fda.png

其中,根据调研数据显示,来自较小公司(100人以下)的受访者了选择采用 JDK 17 的意愿更为强烈,44% 的人计划在未来 6 个月内升级到 JDK 17。规模较大的公司(超过100人)的受访者需求就没有那么强,有 38% 的受访者计划在未来 12 个月后的某个时间升级。

e290716d871e28ff8ad118bec30b4674.png

毋庸置疑,LTS JDK 版本相较非 LTS 版本具有更强的吸引力。不过和上一个 LTS 版本的 Java 8 相比,Java 17 的发展势头更迅猛。

Oracle JDK 即使收费,也是开发者最常用的 JRE/JDK 发行版

2019 年 4 月,Oracle 宣布 Oracle JDK 开启商用收费模式。不过,在今年受访者群体中,Oracle Java 依然是开发者首选的发行版,占 36%。现实来看,这一点也不足为奇,毕竟 Oracle Java 这样的商业发行版可以为大企业提供更为可靠的补丁和更新等服务,由此也让许多大型企业减少内部成本。

Generic OpenJDK 和 AdoptOpenJDK/Adoptium 分列二三位,占比 27% 和 16%。

6c057efdb289ed0fa6412427727a1502.png

2d70e40404b5431a568f3aac9d53aa30.png

Java 应用程序架构趋势:微服务是当之无愧的 NO.1

据调查显示,在开发应用程序所采用的架构中,微服务最受欢迎,占比 32%。其次单片机应用程序占 22%。

45b70d17bc0140d6efda0ee355696404.png

有趣的是,大型企业(100 名以上员工)对微服务的采用率为 36%,这与小型企业(100名以下员工)的 28% 形成鲜明对比。

a218bfc2c7345222ca885eb0f73e76a7.png

近九成开发者正在使用微服务 

当问及开发者对微服务的使用状况时,我们发现大多数组织或团队要么拥有完全基于微服务的应用,要么目前正在向微服务架构过渡,这一比例高达 88%。

7c1ae156cd73598395639539762de4f1.png

bd004fc2d595134911f6a718121c5353.png

Java 技术趋势:Docker、Apache Tomcat 最受开发者欢迎

今年,JRebel 也对虚拟机、框架、云平台、构建工具和 IDE 的使用情况做了进一步的调研,发现在一些流行的虚拟机和容器等平台中,Docker 的热度居高不下,占比 41%,远超位居第二的 Kubernetes(26%)。VMWare 排在第三位,占16%。

cc67fee6a635485fd63e32774fd0ffe1.png

Java PaaS 供应商

AWS 是最受欢迎的 PaaS 供应商,占比 31%。那些不使用 PaaS 的受访者以 24% 的比例位居第二。Azure 是第三位最受欢迎的,占 14%。

02a8ad3595fab6b4c8087a3671c404f7.png

应用服务器

与往年一样,Apache Tomcat 是程序员最喜欢的 Java 应用服务器,占比 48%。其次分别为 JBoss/Wildfly(15%)、Jetty(13%)。

c03a64f684ebf7a8670d143ea8caad65.png

构建工具

在构建工具层面,Maven 使用率最高,占 68%,比去年的使用率增长了一些。

dab9b278022beb6d6f597b1b81d80176.png

与小型公司相比,大型公司对 Maven 使用率更高,占比 71%,而小型公司只有 65%。

Java IDEs

在 2022 年,IntelliJ IDEA 再次成为开发 Java 应用程序时最受欢迎的 IDE,48% 的受访者选择它作为他们的 IDE。Eclipse 位居第二,占比 24% 。其次分别为 VSCode(18%)和 Netbeans(6%)。

整体而言,后来者 VSCode 在竞争激烈的 Java 集成开发环境中逐渐站稳了脚跟。或许很多时候,不少开发者会将其和 IntelliJ 等主流 IDE 同时使用,但一定程度上,它正在蚕食 Eclipse 的市场份额。

0587367d17ac1a03167b9e540e5b8ca6.png

3262a161deeb1c01acac1c9940600269.png

CI/CD 技术趋势

CI/CD、DevOps 方法和工具的实施是企业应用 Java 过程中不可缺少的一部分。根据调查报告显示,和去年一样,Jenkins 是最受欢迎的选择,占比 46%。GitHub Actions 排在第二位,占 16%。

9c86c2ed3b668d32131aa3b3b0bd4ae8.png

在 CI/CD 构建时间上,较小的组织(100名员工以下)的受访者表示不会花费太久的时间,其中 58% 的受访者表示 CI/CD 构建的时间控制在 5 分钟以下。与之形成对比的是,大型组织(超过 100名员工)的这一比率缩减到 42%,且 40% 使用了超过十分钟的时间。

aacabf8c5c35da3c91fe5be117f1a768.png

CI/CD 提交频率

与去年类似,大多数受访者表示,他们每天至少提交五次代码。

c0788a2c26090243bd7d206c822167f5.png

以上是你的真实现状吗?欢迎留言,分享你在 Java 应用过程中的想法。

更多报告内容见:https://www.jrebel.com/resources/java-developer-productivity-report-2021

—END— 

 

 

Logo

20年前,《新程序员》创刊时,我们的心愿是全面关注程序员成长,中国将拥有新一代世界级的程序员。20年后的今天,我们有了新的使命:助力中国IT技术人成长,成就一亿技术人!

更多推荐