安全公司 Snyk 刚刚发布了 JVM2020年度生态系统报告。我们就此机会,将调查结果与 Java 开发工具公司 JRebel 一月中旬发布的 2020 Java 开发人员生产力报告进行了比较。下面和千锋广州小编一起来看看吧!
Snyk 报告:snyk.io/blog/jvm-ecosystem-report-2020/
JRebel 报告:jrebel.com/blog/2020-java-technology-report
让我们一起来看看目前最流行的 Java IDE 和 JVM 语言,以及公司是否会选择升级生产环境的 Java 版本。
Java10.png
Java IDE 前三名
首先了解一下大家开发 Java 的主力 IDE。
IntelliJ IDEA 在两份报告中以较大优势胜出。在 Snyk 的调查中,有 62% 的受访者正在使用 IntelliJ IDEA;在 JRebel 的报告中,这一数字甚至更高,为82%。两项调查中的第二名都归属于 Eclipse(Snyk:20%,JRebel:24%)。
第三名的局势不太明朗:Snyk 调查排名第三的是 Apache NetBeans(占10%),而JRebel 的报告中 Visual Studio Code(占10%)位于 NetBeans(占4%)之前。相比之下,Snyk 的受访者中只有 2% 使用 VS Code 作为主力 IDE。
Java 构建工具前三名
Snyk 和 JRebel 的调查都向受访者询问了开发中主要使用哪些构建工具,得到的结果明显不同。
Snyk 排名前三的 Java 构建工具分别是 Maven(64%)、Gradle(25%)和Ant(6%)。尽管它们 JRebel 的报告中也排名前三,但结果的百分比却大不相同,Gradle(47%)、Maven(44%)和 Ant(7%)。
Java 框架前三名
调查还询问了受访者使用的开发框架。
Snyk 报告中 Web 服务框架的结果为 Spring Boot(50%)、Spring MVC(31%)。Snyk 还向受访者询问了 Spring 的版本,将近一半(48%)的受访者使用 5.1.x,其次是5.0.x(18%)。事实证明强烈推荐更新版本。Web 服务框架第三名,21%的受访者选择“无”,11% 选择JSF。
JRebel 报告得出的结果同样有很大差别,但 JRebel 的问卷允许选择多个答案,问题也不一样:“在主要开发项目中使用了哪些 Java 应用框架和技术?” 受访者把 Spring 列为第一名(86%),第二名是 Persistence(51%),第三名是服务端渲染技术(27%)。
JVM 编程语言前三名
这个问题只出现在Snyk的调查中,因此无法比较。Snyk 调查受访者使用哪种 JVM 语言完成主要开发工作。
Java 以 87% 的选票荣登榜首,不足为奇。Kotlin 得票 5.5%是除 Java 外最受欢迎的 JVM 编程语言。Clojure 得票 2.9% 排名第三,受欢迎程度较低。Scala 得票2.6%,排名第四。Groovy 得票 1.5%,排名第五。
前3个Java版本
最后一个问题:受访者在生产环境中使用哪个 Java 版本?
事实证明,2014 年发布的 Java 8 仍然是王者,分别得到了 64%(Snyk)和 58%(JRebel)的投票。亚军是 2018 年发布的 Java 11 LTS,分别得到了25%(Snyk)和23%(JRebel)的投票。
生产中几乎没有使用Java 8 和 Java 11 之外的其他版本。Snyk 的受访者使用 Java 12的比例为 4%,Java 7 或更低版本的比例为 3%。JRebel 报告的结果类似:只有 5% 的受访者使用 Java 12 或更高版本,甚至不及“Java 7 或更低版本” 的 7% 得票。Java 9 和 Java 10 在 Snyk 的调查中的得票均为 2%,JRebel 甚至没有把它们作为调查的选项。
Java 8 成功的原因
为什么 Java 8 仍然被广泛使用?Snyk 仔细看了一下调查报告,在询问受访者为什么没有升级到最新版本时允许最多三个答案。
超过一半(51%)的受访者表示,当前版本一切运行正常;32% 的受访者认为迁移成本过高;30% 的受访者表示无法迁移业务;27% 的受访者回答新版本并没有提供期望的功能;还有 10% 的受访者明确表示不接受新版本的发布节奏。
调查报告说明
超过 2000 名受访者参加了 Snyk 的全球调查,其中 89% 具有技术背景。该调查于 2019 年下半年进行。JRebel 也进行了一项全球调查,该调查从 2019 年 9 月至 2019 年 11 月在 399 位参与者中进行。
更多信息,千锋广州小编建议大家参阅 Snyk 和 JRebel 的完整报告哦。