号称针对Java开发者的史上规模最大的调查报告—2018 JVM 生态报告已于上周三正式发布,超过10200名开发者参与调查,报告共分为五个部分:JDK、工具、平台、应用、流程。
我们将挑选出大家比较关注的调查结果,如需查看调查报告全文,可以点击文末的“阅读原文”。
导读:开始之前,本报告将会比较长,下述是报告主要亮点部分。
Chapter1 关于你的JDK
Question :(在生产环境)你主要使用哪个 Java 供应商的 JDK ?
10个开发者中,7个位使用Oracle JDK,2位使用OpenJDK,其余仅占1席。
Question :(在生产环境)你主要使用哪个 Java SE 版本?
79%的受访者表示在生产环境中使用的是Java 8。
Question :你计划如何跟进Java的新发布周期?
众所周知,Oracle已将Java发布周期调整六个月(每年3 月份和 9 月份发布)。根据调查结果,仅8%受访者愿意一直根据新Java版本,仍有将近1/3的受访者表示还未考虑清楚如何应对Java的新发布周期。
Chapter2 关于你的工具
Question :你使用哪个 IDE进行Java开发 ?
45%受访者使用IntelliJ IDEA(32%使用付费版本),38%受访者使用Eclipse IDE。
Question :你主要使用哪种构建工具?
Maven仍然以60%的比例占据绝对领导地位,在2016年RebelLabs的类似调查报告中,Maven和Gradle的使用比例分别是68%和16%,很显然Gradle增长趋势不明显。
Question :你使用哪种代码质量管理工具?
SonarQube、Findbugs和Checkstyle占据前三。
Question :你使用哪种CI工具?
Jenkins以57%的比例占据榜首,未使用任何CI工具的比例(22%)与使用其他工具比例相差无几(21%)。
Question :你使用哪种代码托管工具?
Github、Bitbucket和GitLab分列前三,这里不得不提一下,华为ServiceStage的应用开发流水线除了支持上述三种代码仓库,还支持DevCloud、Gitee。
Question :你使用哪种测试技术?
78%受访者使用了JUnit,在mocking框架中Mockito已然脱颖而出,被45%受访者使用。
Chapter3 关于你的平台
Question :你是否使用云计算平台?使用了哪个云平台?
57%的受访者表示使用了云平台,另有43%表示未使用。很显然,AWS仍然以63%的比例占据绝对领导地位。
Question :你使用了哪种云技术或技术手段?
容器技术以43%高居首位,虚机仍占据了33%的比例。
Chapter4 关于你的应用
Question :你使用了哪种Web框架?
Spring系列已经主导了Java生态系统,Spring Boot和Spring MVC分别为40%、36%。
Question :(在生产环境)你使用了哪种数据库?
Oracle Database占据27%,MySQL和PostgreSQL紧随其后,MongoDB排名最高的非关系型数据库,5%。
Question :你(直接)依赖了多少开源组件?
除去23%的受访者不清楚,剩余的超过95%受访者在项目组使用了开源组件。
Chapter5 关于你的流程
Question :你的新版本的发布节奏是?
仅有7%的受访者称每天发布多次,其余大部分保持在每周或每两周1-2次。
Question :你的一般从何处获取Java相关资讯?
Question :你在何处进行你的开发工作?