当前位置: 首页 > news >正文

2023年JetBrains开发调查:Java 8仍广泛使用

开发者生态系统调查是查找和分析实际情况的好方法,而实际情况通常与看似流行或趋势的情况相反。

排名前三:

  • Java8采用率:50%
  • Java17采用率:45%
  • Java11采用率:38%

看到这么多人仍在使用 Java 8(及更早版本)。JetBrains想知道是什么阻止他们升级到较新的版本并无法访问出色的新语言功能,以及JetBrains如何帮助他们将代码迁移到较新的 Java 版本。

网友观点:

1、令人惊讶的是,Java 17 紧随其后。也许,从Java 11(甚至 9)迁移到Java 17 比从Java 8迁移痛苦要少得多。

2、有趣的是,与 Java 11 相比,更多的开发人员在生产中使用 Java 17。

3、在版本 9 之后,Java 将版本分为两种类型:STS 和 LTS。

  • STS 代表短期支持。这些版本的支持期仅为 6 个月。它们主要用于发布新的实验性或“预览”功能,以便开发人员有机会在实际场景中使用它们并提供反馈。Java 10、12、13、14、15、16、18、19 和 20 是 STS 版本,Java 22、23 和可能的 24 也将是 STS 版本。
  • LTS 代表长期支持。它们受到多年的支持,被认为是“稳定”版本。在 Java 8 和 Java 9 成为最后一个“正常”版本之后,迄今为止唯一的 LTS 版本是 Java 11、Java 17 和 Java 21。

4、Java 8 是最古老的广泛使用的版本,而 6/7 远没有那么广泛使用,这一事实让我不相信这项调查。
对 jetbrains 调查做出反应的人可能会导致调查结果偏向于更新的技术。

5、CentOS 7 仍然被广泛使用。Python 2 仍然被广泛使用。

6、在过去的两年里,我目睹了 3 个主要项目从 Java 8 升级到 11 和 17。其中两个是在 Log4J 崩溃后直接升级的。通常的问题是,开发人员多年来一直在推动这些升级,但管理层却从来没有时间这样做。

7、我敢打赌,未来 3 年变化很快,很多项目都在使用 Spring Boot,如图所示。Spring Boot 3 放弃了对 Java 8 的支持,到明年年底旧版本将不再受支持。我希望 Spring 能帮助我们所有人走向未来,这样我们就可以摆脱 Java 8 的束缚。

8、Java 8 是一个巨大的飞跃,具有许多新功能,并且对于许多开发人员来说是一个可靠的“足够好”版本。8 是一个 LTS 版本,在某些方面仍然受到官方支持(至少是最近,不知道具体时间表)。这是此类版本中最古老的。

9、 Android 与Java 8有关。

10、Java 8 也是 Oracle 进行许可证转换的时候,因此冻结了很多不想向 Oracle 支付 Java 许可证费用的人。“许可证转换”是 Oracle 在 JDK 11 中完全开源 JDK。JDK 11 及更高版本的许可证比 JDK 8(以及所有以前的版本)更加开放和宽松。JDK 8 仍然有需要付费的功能或使用领域;从 JDK 11 开始,这一切都消失了。

11、自 Java 8 以来,一半的 Java 开发人员已经放弃了 Java,转而使用不同的编程语言。

12、今天在 ReInvent 上,AWS 展示了一款新的人工智能工具,可以学习您的代码库(不会将信息报告给 AWS 进行训练),一个小团队在 2 天内将 10,000 个 Java 8 迁移到 17,2 天内升级 10k 个应用程序。它很狂野。

13、问题不在于使用 java 8 的人。问题在于仍在使用 java 6 的人

https://www.jdon.com/70502.html

相关文章:

  • MyBatis查询优化:枚举在条件构建中的妙用
  • OA系统是什么,能用低代码开发吗?
  • 外包干了2个月,技术明显退步了...
  • Sequential Modeling Enables Scalable Learning for Large Vision Models
  • Spring Security 6.x 系列(7)—— 源码分析之Builder设计模式
  • RK3568平台开发系列讲解(Linux系统篇)device_node 转换成 platform_device
  • CCF CSP认证 历年题目自练Day51
  • uniapp搭建内网映射测试https域名
  • vscode + Linux 如何在编辑器调试webserver这类完整C++项目
  • 【Cesium】模型平面裁切
  • spring boot配置文件格式 ${}和@@
  • Kotlin(十三) 延迟初始化和密封类
  • kubeadm 安装k8s1.28.x 底层走containerd 容器
  • EasyExcel list<Map>批量导出多个sheet
  • 大数据之HBase(二)
  • 2018以太坊智能合约编程语言solidity的最佳IDEs
  • 2019.2.20 c++ 知识梳理
  • 4. 路由到控制器 - Laravel从零开始教程
  • ComponentOne 2017 V2版本正式发布
  • DOM的那些事
  • golang中接口赋值与方法集
  • JavaScript工作原理(五):深入了解WebSockets,HTTP/2和SSE,以及如何选择
  • JAVA并发编程--1.基础概念
  • Less 日常用法
  • NLPIR语义挖掘平台推动行业大数据应用服务
  • Spring Cloud中负载均衡器概览
  • SQLServer之创建显式事务
  • 程序员最讨厌的9句话,你可有补充?
  • 计算机常识 - 收藏集 - 掘金
  • 力扣(LeetCode)56
  • 前端
  • 浅谈Golang中select的用法
  • 如何设计一个比特币钱包服务
  • 想使用 MongoDB ,你应该了解这8个方面!
  • RDS-Mysql 物理备份恢复到本地数据库上
  • 如何用纯 CSS 创作一个货车 loader
  • 树莓派用上kodexplorer也能玩成私有网盘
  • ​力扣解法汇总946-验证栈序列
  • ​人工智能书单(数学基础篇)
  • ​人工智能之父图灵诞辰纪念日,一起来看最受读者欢迎的AI技术好书
  • $.proxy和$.extend
  • (1综述)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练
  • (4) PIVOT 和 UPIVOT 的使用
  • (4.10~4.16)
  • (Matalb时序预测)WOA-BP鲸鱼算法优化BP神经网络的多维时序回归预测
  • (poj1.2.1)1970(筛选法模拟)
  • (ZT) 理解系统底层的概念是多么重要(by趋势科技邹飞)
  • (二十四)Flask之flask-session组件
  • (附源码)spring boot北京冬奥会志愿者报名系统 毕业设计 150947
  • (三)终结任务
  • (转)3D模板阴影原理
  • .net 调用php,php 调用.net com组件 --
  • .net的socket示例
  • .NET建议使用的大小写命名原则
  • .NET轻量级ORM组件Dapper葵花宝典