1. 前言
2020 年 JVM 生态报告已经出炉。该报告由英国软件安全服务商 Snyk 联合 Oracle 官方刊物 The Java Magazine 联合推出。我们来看看 JVM 生态圈最新的情况以及发展的趋势,这对 Java 开发者至关重要。
2. OpenJDK 的崛起
随着 Oracle 修改其 JDK 上的许可协议,用户在选择 JDK 的问题上有了更多顾虑。尽管甲骨文 JDK 仍然占主导地位,占 34% ,而去年的报告这一比例为 70% 。
越来越多的开发者转向了其他 OpenJDK 提供商。每四个开发人员就有一个选择采用 OpenJDK 。
究其原因,只有 9% 的参与者愿意付费使用 JDK ,都是钱的锅啊!另外 JDK 发布节奏的加快(每年 3 月、9 月)也影响了用户的 JDK 更新策略,也间接影响了这些用户的付费决定。
3. Java 8 依然是主流
Java 8 依然占据着 64% ,去年为 79% 。 2018 年 9 月发布了 Java 的第一个长期支持( LTS )版本 Java 11 , Java 8 的份额正在慢慢降低。参与调查的开发人员中已经有四分之一在生产环境中运行过 Java 11 。虽然 JDK 的发布节奏加快了,但是每六个月就需要迁移到新版本对于公司和开发者来说也是成本巨大的。 51% 的受访者表示当前版本的工作正常,迁移并不是必须的。而且 55% 的坚持使用 LTS 版本以获取长期支持。
4. Kotlin 成为第二 JVM 语言
Java 语言依然统治着 JVM 平台。 Kotlin 从去年 2.4% 增长到 5.5% 成为第二 JVM 语言, Kotlin 语法简洁,没有 NPE 问题,和 Java 之间有良好的互操作性。连 Spring 5 都对它进行了良好的支持。虽然目前主要 Kotlin 的开发者在安卓移动端,已经有一部分开发者尝试在后端使用 Kotlin 。
5. Spring Framework 傲视群雄
10 个开发者中有 6 个使用 Spring Framework 开发他们的应用程序。经过不断的打磨, Spring 已经演变成 Java 生态系统中最主要的框架。而且 2/3 的 Spring 用户使用了他们最新的主版本 Spring 5 。
服务端开发框架也是 Spring 主宰的世界,其中 Spring Boot 就占据了半壁江山。还有 31% 的份额也属于 Spring 自家的 Web 框架 Spring MVC 。新出的框架 Micronaut 和 Quarkus 有可能同 Spring 进行竞争,但是只能等到明年才能得出结论,今年它们并没有排的上号。