2018年Java生态行业报告
0 Java版本使用占比
毫无疑问,Java8被广泛用于生产环境!
Java 9和Java 10的使用率非常低,不到5%。
2017年,Java 7和更早的版本的数量大约是24.4%,现在是10.6%——所以生态系统显然正在升级,主要是升级到Java 8。
1 Spring版本使用占比
Spring 4是现阶段应用最广泛的版本。
很多开发者,正在向Spring 5进行迁移,Spring 5的比例由去年的百分之2.2上升到今年的百分之24,这是一个明显的趋势!
2 Spring boot版本使用占比
Spring boot真的是给Java开发者带来了福音,解放了很多劳动力。现在凡是采用Spring构建的系统,基本上都是用了Spring boot。
去年,大约30.2%的基于Spring的应用程序只使用核心框架,但没有使用Boot;现在,这个数字只有16.7%。简而言之,大多数Spring应用程序现在都使用Boot。
Spring Boot 2的占比上升很迅速,已经占到了百分之30!Boot 1.4以及更老的版本由去年的百分之30降为百分之6.8。
3 编译工具使用占比
Maven依然占据着最大的市场份额,百分之74.2。
至于Gradle,它占据了市场的一小部分,主要来自Ant规模的缩小,现在只占市场的五分之1 ,即百分之21.3。
4 开发工具使用占比
IntelliJ Idea由去年的45.8%增长到今天的55.4%,显然赢得了今年Java领域的IDE王者之战。
NetBeans今年降至5.1%,不到2017年12.4%的一半。Eclipse依然占据百分之30多。有趣的是,IntelliJ获得的大部分市场份额令人惊讶地来自NetBeans,而不是Eclipse。
5 Web应用服务器使用占比
Tomcat,毫无疑问依然是王者!占据百分之62.5的市场!
其他应用服务器则相对均匀的瓜分剩余的市场!各占大约百分之5的样子!
6 JVM语言使用占比
Java占据百分之62.8,王者!
对剩余的JVM语言,画一个饼状图,不得不提Kotlin--这是一个疯狂的一年,从2017年的11.4跃升至今天的28.8%
7 总结
2018年的Java生态系统,非常的有趣,证实了一些已经众所周知的趋势,并带来了一些新的变化。
在IDE方面,IntelliJ仍在以强劲的步伐增长。而且,Kotlin可能是今年最大的“赢家”,未来或许可以改变JVM语言的格局。
Spring Boot现在被大多数Spring项目所采用,这已经不足为奇了,但这么短的时间内,获得这么大的进步,说明Boot确实能给开发者带来生产力提升。
2018年Java生态行业报告的更多相关文章
- phoenix连接hbase数据库,创建二级索引报错:Error: org.apache.phoenix.exception.PhoenixIOException: Failed after attempts=36, exceptions: Tue Mar 06 10:32:02 CST 2018, null, java.net.SocketTimeoutException: callTimeou
v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VM ...
- 【面试题】整理一下2018年java技术要领
整理一下2018年java技术要领 基础篇 基本功 面向对象的特征 final, finally, finalize 的区别 int 和 Integer 有什么区别 重载和重写的区别 抽象类和接口有什 ...
- 2018年Java面试题搜集
2018年Java面试题搜集 一.Servlet执行流程(浏览器访问servlet的过程容器) 客户端发起http请求,web服务器将请求发送到servlet容器,servlet容器解析url并根据w ...
- Java 生态碎片化 和 .NET生态的一致性
.NET Core是以MIT协议开源, Java是GPL协议开源.Java 8 SDK升级Oracle要收费这件事对于很多小公司是有着重大的影响的,Java生态越发碎片化,有众多的OpenJDK发行版 ...
- 2018年Java后端面试经历
楼主16年毕业,16年三月份进入上一家公司到今年3月底,所以这是一份两年工作经验面经分享. 都说金三银四,往些年都是听着过没啥特别的感觉.今年自己倒是确确实实体验了一把银四,从3月26裸辞到4月17号 ...
- SpringCloud初体验:五、Sidecar 将 PHP 这类非 Java 生态语言的服务接入 Spring Cloud
先起一个 Sidecar 服务,一个PHP服务一个应用,和PHP服务部署在同一台机子,通过 localhost 访问,这样就解决了网络开销,相当于本地进程间调用 Sidecar 服务比较简单, 1.这 ...
- 2018年Java面试题整理
面试是我们每个人都要经历的事情,大部分人且不止一次,这里给大家总结最新的2018年面试题,让大家在找工作时候能够事半功倍. 1. Switch能否用string做参数? a. 在 Java 7 之前 ...
- 2018的Java
少用复制黏贴 程序员很多时候都习惯复制黏贴,这里复制一点,那里复制一点,拼拼凑凑的搞出了一段代码.这是一种常态,毕竟没有必要重复造轮子,在开发的时候,讲究的是效率,讲究速度,有时候也是不得不这样做.但 ...
- java生态环境
Which Java package do I need? Software Developers: JDK (Java SE Development Kit). For Java Developer ...
随机推荐
- java的优点和误解 《java核心技术卷i》第一章
<java核心技术卷i>第一章主要内容包括三点: 1:Java白皮书的关键术语:描述Java的十一个关键字: 2:Java applet 3 :关于Java的常见误解 1:第一章:Ja ...
- 使用MUI/html5plus集成微信支付需要注意的几点问题
1)需要在服务器根目录放上证书,从微信开放平台下载 2)客户端组件目录名一定要按照微信要求
- L2-024. 部落
在一个社区里,每个人都有自己的小圈子,还可能同时属于很多不同的朋友圈.我们认为朋友的朋友都算在一个部落里,于是要请你统计一下,在一个给定社区中,到底有多少个互不相交的部落?并且检查任意两个人是否属于同 ...
- java调用天气预报接口案例
免费天气接口:http://mobile.weather.com.cn/data/sk/城市ID.html 例如: http://mobile.weather.com.cn/data/sk/10124 ...
- KMP算法详解-彻底清楚了(转载+部分原创)
引言 KMP算法指的是字符串模式匹配算法,问题是:在主串T中找到第一次出现完整子串P时的起始位置.该算法是三位大牛:D.E.Knuth.J.H.Morris和V.R.Pratt同时发现的,以其名字首字 ...
- Linux CFS调度器之pick_next_task_fair选择下一个被调度的进程--Linux进程的管理与调度(二十八)
1. CFS如何选择最合适的进程 每个调度器类sched_class都必须提供一个pick_next_task函数用以在就绪队列中选择一个最优的进程来等待调度, 而我们的CFS调度器类中, 选择下一个 ...
- AI学习---特征工程【特征抽取、特征预处理、特征降维】
学习框架 特征工程(Feature Engineering) 数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已 什么是特征工程: 帮助我们使得算法性能更好发挥性能而已 sklearn主 ...
- Pycharm用鼠标滚轮控制字体大小
一.pycharm字体放大的设置 File —> setting —> Keymap —>在搜寻框中输入:increase —> Increase Font Size(双击) ...
- 聚类——GAKFCM的matlab程序
聚类——GAKFCM的matlab程序 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 在聚类——GAKFCM文章中已介绍了GAKFCM算法的理论知识, ...
- 记录参加QCon2017北京站的心得
如有侵权,请告知作者删除.scottzg@126.com 很荣幸参加QCon全球软件开发大会,这里特别感谢我们部门的总经理,也是<互联网广告算法和系统实践>此书的作者王勇睿.因为他我才有这 ...