最近「技术最前线」看到 RebelLabs 做了一次 2016 年 Java 工具与技术的调查,调查报告虽然是
6 月公布的,但数据一点也不过时。

所以「技术最前线」忙会了一中午,写了这篇文章,带大家一起看看一些值得关注数据。比如:

  • 46% 的在用 IntelliJ IDEA,已超过了 Eclipse 的 41%; (谁是 Java IDE 王者,已经有答案了)

  • Git 有 68% 份额,而 SVN 仅有 23%;(这个不出意外)

如果你想偷懒,可以直接拖到最后看总结,但十分不建议这么做啦~ 另外,本文已同步发布在伯乐头条(top.jobbole.com)网站。

一、总览

68% 的开发者用 Maven;

68% 的在用 Git;

46% 的在用 Intellij IDEA;

43% 的在用 Spring MVC

34% 的在用 微服务架构;

32% 的在用 Docker;

62% 的在用 Java 8;

60% 的在用 Jenkins;

42% 的在用 Tomcat;

39% 的在用 Oracle DB;

31% 的在用 Java EE 7;

29% 的在用 Spring Boot;

参与者的工作经验

74% 的程序员自认为高于平均水平

工作中主要项目的类型,67% 是全栈 Web 应用

是否采用了微服务架构?

在用哪种 JVM 语言?

Java 版本

Java EE 版本

Java IDE

构建工具

应用服务器(蓝色为生产环境,黄色为开发环境)

生产环境所用的数据库

二、趋势

Java SE 版本使用率(从2012年起)

Java EE 版本使用率(从2014年起)

Java IDE 使用率(从2012年起)

构建工具使用率 ↓

Web 框架使用率 ↓

版本控制系统 ↓

总结

  • 2040 名开发者参与;

  • 做全栈Web项目的开发者,平均大约有 10 - 12 年的工作经验;

  • 63% 的在大企业或中型工作就职;

  • 74% 的自认为高于业界平均水平;

  • 34% 采用了微服务架构;

  • 66% 并没有采用微服务,其中仅有 12% 的在未来有计划试试;

  • Java 8 是主流,62% 的参与者已经在生产环境用上了;

  • Java EE 7 , 31% 的参与者已经在用新版本了;

  • 42% 的根本不用 Java EE;

  • 46% 的在用 IntelliJ IDEA,已超过了 Eclipse 的 41%;

  • 68% 的在用 Maven ,Gradle 只有 16%.

  • Tomcat 是最受欢迎的应用服务器,高达 42%;

  • 39% 的参与者在用 Oracle DB ,稍微比 MySQL 的 38% 高了一点;

  • MongoDB 在最受欢迎的 NoSQL DB ,比例是 15% ;

  • Spring 依旧主宰着 Web 框架市场, Spring MVC 和 Spring Boot 的比例是 43% 和 29%;

  • Jenkins 主宰着 CI Server 市场,比例是 60% ;

  • Git 有 68% 份额,而 SVN 仅有 23%;

  • New Relic 在 APMs 有着 11% 份额;

  • 32% 的参与者在用 Docker ,但 54% 的根本没用虚拟化环境;

  • 71% 的参与者宣称自己是 Agile 的;

  • 未经伯乐在线许可,请勿转载;

过去四年的变化

  • Eclipse 的份额持续下降,而 IntelliJ 却稳步持续上升,已经在使用率超越了 Eclipse;

  • Maven 依旧保持着绝对的领先优势;

  • Gradle 增长缓慢,暂时还不足以挑战 Maven;

  • Spring 主宰着 Web 框架市场,从 2012 年到 2016 年持续增长中,特别是 Spring Boot 可以称为剧增;

  • JSF 在缓慢下降。Stripes、Tapestry、Wicket 和 Play 1 看样子要退出历史舞台了;

  • Git 展示了强劲的增长,从 27% 到 68%。而 SVN 却从 55% 降到 23%;

2016 年 Java 工具和技术的调查:IDEA 已超过的更多相关文章

  1. java的JSP技术

    java的JSP技术 [toc] 1.JSP简介 Jsp技术是用来开发java web的页面显示的,所有MVC模型里面的视图层,所以视图层的开发 jsp不是编程语言,三个英文是java server ...

  2. java的poi技术写Excel的Sheet

    在这之前写过关于java读,写Excel的blog如下: Excel转Html java的poi技术读,写Excel[2003-2007,2010] java的poi技术读取Excel[2003-20 ...

  3. Java Web编程技术学习要点及方向

    学习编程技术要点及方向亮点: 传统学习编程技术落后,应跟著潮流,要对业务聚焦处理.要Jar, 不要War:以小为主,以简为宝,集堆而成.去繁取简 Spring Boot,明日之春(future of ...

  4. 《精通Hibernate:Java对象持久化技术详解》目录

    图书信息:孙卫琴 电子工业出版社 第1章 Java应用分层架构及软件模型: 1.1 应用程序的分层体系结构 1.1.1 区分物理层和逻辑层 1.1.2 软件层的特征 1.1.3 软件分层的优点 1.1 ...

  5. java集群技术(转)

    来源:http://blog.csdn.net/cdh1213/article/details/21443239 序言 越来越多的关键应用运行在J2EE(Java2, Enterprise Editi ...

  6. 2016最新Java笔试题集锦

    更新时间:2015-08-13         来源:网络         投诉删除 [看准网(Kanzhun.com)]笔试题目频道小编搜集的范文“2016最新Java笔试题集锦”,供大家阅读参考, ...

  7. 2015第44周五Java集群技术(转)

    从http://blog.csdn.net/cdh1213/article/details/21443239上看到这篇文章,感觉很不错,找好久没找到中文出处,最早看是从http://www.these ...

  8. 深入了解java集群技术

    原文源自:http://blog.csdn.net/happyangelling/article/details/6413584 序言 越来越多的关键应用运行在J2EE(Java 2, Enterpr ...

  9. 10.Java 加解密技术系列之 DH

    Java 加解密技术系列之 DH 序 概念 原理 代码实现 结果 结束语 序 上一篇文章中简单的介绍了一种非对称加密算法 — — RSA,今天这篇文章,继续介绍另一种非对称加密算法 — — DH.当然 ...

随机推荐

  1. WIN7通过批处理开启/禁用无线网卡

    哥比較懒,直接上步骤: 1.看自己的电脑是否有devcon.exe 这个软件,能够直接在WINDOWS文件夹的SYSTEM32文件夹下面搜索.也能够通过命令行RUN-----------CMD---- ...

  2. PL/SQL Developer自己主动补全SQL语句

    快捷输入SQL语句,比如输入s,按下空格,自己主动替换成SELECT;再比如,输入se,按下空格, 自己主动替换成SELECT * FROM,很方便,节省了大量的时间去编写反复的SQL语句. 设置方法 ...

  3. 一个使用命令行编译Android项目的工具类

    一个使用命令行编译Android项目的工具类 简单介绍 编译apk项目须要使用的几个工具,基本都在sdk中,它们各自是(Windows系统): 1.aapt.exe 资源打包工具 2.android. ...

  4. Android上传图片之调用系统拍照和从相冊选择图片

    Android上传图片之调用系统拍照和从相冊选择图片 本篇文章已授权微信公众号 guolin_blog (郭霖)独家公布 前言: 万丈高楼平底起,万事起于微末.不知不觉距离上篇博文已近四个月,2015 ...

  5. class com.sun.jersey.core.impl.provider.entity.XMLJAXBElementProvider$Text

    运行mapreduce遇到的错: Java.lang.ClassCastException: classcom.sun.jersey.core.impl.provider.entity.XMLJAXB ...

  6. libhiredis.so.0.13 => not found 缺少

    wget https://github.com/redis/hiredis/archive/v0.13.3.tar.gz tar -xzvf v0.13.3.tar.gz cd hiredis- ma ...

  7. typescript 基本数据类型

    1.boolen 布尔类型 let boolen1: boolen = false; 2.number 数字类型 let num1: number = 0b110;//二进制 let num2: nu ...

  8. PyQt5.9 Html与本地代码交互实例

    在PyQt5.9中, 应用QWebEngineView和QWebChannel技术, 可以进行HTML与本地代码进行交互. 要点: 创建交互对象, 基于QObject, 定义信息槽 创建QWebCha ...

  9. VS中的路径宏

    说明$(RemoteMachine)设置为“调试”属性页上“远程计算机”属性的值.有关更多信息,请参见更改用于 C/C++ 调试配置的项目设置.$(References)以分号分隔的引用列表被添加到项 ...

  10. JS实时获取浏览器窗口尺寸 .

    给div实时设置宽度 <div id="detail" style="width: 100%; overflow: scroll;"> </d ...