旧文:年终盘点:Java今年的大事记都在这里!

2023-12-13 12:10

本文主要是介绍旧文:年终盘点:Java今年的大事记都在这里!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在2017年即将结束之际,我们最好停下脚步来看看过去十二个月Java的发展情况。本文,笔者盘点了IT168企业级一年来对Java的跟踪报道。

这一年对Java来说是不容易的,从Java 9一再延期备受争议,再到拿下所有权威排行榜的前三名,Java今年发生了太多事情,饱受了很多争论。

image.png

风平浪静的一月

2017年开始之际,Jeff Luszcz解释了使用“免费”Java软件的一些陷阱以及开发者希望在Java 10中看到哪些功能。

由于一些语言服务器协议,Eclipse Che 5.0支持Java。

尚未遭遇变故的二月

我们在2月份拿到了很多顶级技术列表,主要集中在针对重要编程语言,顶尖编程语言和IT最热门工作的调查结果。对Java 9特性的持续报道继续介绍了JDK 9的早期访问文档。

本月,Google的Cloud Spanner测试版发布,完全支持Java。Oracle与谷歌的诉讼持续升温,双方继续争夺Java API。

登上最值得被学习榜单的三月

本月,Java被列为2017年最值得学习的编程语言之一。IntelliJ IDEA 2017.1加入了对Java 8的支持。另外,Stephen Colebourne解释了为什么需要利用Java 8的优势。

Angualr抢走关注点的四月

四月发生了什么? 本月,我们了解了Angular 4的顶级功能。

我们看了2017年的微服务趋势,Java消亡的预测以及Java是否对初学者不利(斯坦福大学将入门编程语言从Java换成了Python)。仔细研究了Stack Overflow调查报告,发现Java从版本9到5是非常流行的。

开始出现下滑迹象的五月

本月,主要关注TIOBE指数,榜单显示Java正在走向下滑。

其他消息包括Java的父亲詹姆斯·高斯林(James Gosling)加入与AWS合资的公司。在Eclipse中,对Eclipse Oxygen的早期观察表明,这一切都意味着Sirius更好的可用性和工作流程。

Java 9延迟消息被曝出的六月

本月是Java 9延迟消息最先发布的时候,OpenJDK管理委员会主席和甲骨文Java平台组开发副总裁Georges Saab解释了这其中的原因,由于委员会投票未通过导致这一结果。同时,他也表示Java 9不会在没有Jigsaw的情况下独自上线。

本月,Eclipse Oxygen终于发布!

为广大Java程序员打了一剂强心针,Java虽然一直被唱衰,但不会死亡,毕竟它有其自身的独特优势。(《Java不被看好,前景堪忧?程序员怎么看?》)

敲定最终发布日期却遭遇信任危机的七月

本月,Java 9终于敲定最终发布日期为9月21号,对于Java 9的一再延期,外媒采访了圈内比较知名的Java开发大神,这十位开发者对这一事件的看法各不相同,有的认为Java 9仍然是值得期待的,有的认为根本没想到Java 9可以通过委员会的投票,根本就不会有人使用Java 9.(《Java 9状况百出,Java程序员大神们都忍不住发声了!》

本月,Java 9公布了前九大改进和功能,对由于资金问题无法出现在Java 9中的JSON API进行了说明。

image.png

Java 9新一轮解读开始的八月

由于Java 9的一再延期,多数开发者对此项目充满了不信任。Monica Beckwith是一名Java/JVM 性能咨询专家,他在接受访问时表示,Java 9的亮点不是一个Jigsaw就可以概括的。Java 9加入了很多新特性,在性能等方面也有很大改进。

Java EE 8发布新功能,简化的同时扩展了平台范围,以适应当前云和web开发中的新兴技术。

在本月公布的IDE搜索排行榜中,Eclipse位居榜首,与Visual Studio、Android Studio一起成为了开发者搜索最多的IDE之一。

本月的TIOBE榜单中,Java的指数为12.961%,比去年同期下降了6个百分点,创下历史新低。

本月新发布的CheerpJ可以轻松将Java应用转换为javaScript。

Java 9终于到来但让开发者有些失望的九月

所有的延迟都是值得的,因为Java 9终于到来了,这是本月的最大事件。

9月21日,一再延期的Java 9终于正式发布。宣传最热的Jigsaw似乎并没有迅速赢得开发者的心。基于Project Jigsaw的模块化功能引起了广大程序开发人员的争议,Java商店对于模块化功能并没有立即更新,而是保守的决定等模块化成熟后再进行更新。

Azul Systems营销副总裁Howard Green在采访中表示,鉴于JDK 8的广泛采用,他怀疑Oracle可能会延长它的寿命,特别是JDK9的采用速度远不及JDK 8那么快时。

经历了Java 9延期事件,Oracle的Java平台组首席架构师Mark Reinhold提出,Java SE平台和JDK将转变为严格的基于时间模式,每六个月增加一个新功能,每季度更新一次,每三年发布一次长期支持。

此外,一组葡萄牙的研究人员在本月公布了编程语言与节能效率之间的关系,整个过程主要考虑了三个变量:执行时间、内存消耗和能耗。最终,Java成为最节能的编程语言之一。

image.png

据国外顾问机构约翰·库克博士的预测,到2039年,Java将死亡。Java被列为21世纪即将死亡的编程语言之一。

Java EE本月正式移交给了Eclipse基金会。

Kotlin虎视眈眈喧宾夺主的十月

本月对Java来说,可谓是厄运缠身。Python与Kotlin对Java的冲击显然不小。这场战争最先由Realm引爆,Realm是一家实时移动平台提供商,在本月发布了针对10万多名程序员的调查结果。数据显示,过去的四个月中,使用Java构建的Android应用程序数量下降了6.1%,该机构预测到2018年12月,Kotlin在Android领域将超越Java,这就好像Swift一步步打败了Objective-C。(《Java被抛弃?大量安卓程序员涌向Kotlin!》)

不久后,在GitHub发布的年度报告中,Python又成功挤掉了Java上升至第二位。好在Oracle及时宣布了JDK 18.3计划,才让Java扳回一城。Oracle在声明中表示,JDK9的下一个版本将更名为JDK18.3。

此外,阿里巴巴李三红在一场公开演讲中表示,阿里开发的所有Java应用程序都在运行AJDK,阿里巴巴基于丰富的Java开源定制了大部分软件生态系统。

前三季度盘点Java稳坐前三名的十一月

11月份,大家对Java 9的关注似乎有所减少(可能是因为转向了最新的Angular和Kotlin 1.2)。Kotlin 1.2最新版本的发布可能会进一步侵占Java的市场。

此外,作为加速发布周期举措的一部分,Oracle宣布“大多数版本发布应至少包含一个或两个重要功能”。为了让Java保持相关性和现代化,Oracle为Java添加了许多新特性,同时弃用了一部分特性。(《Oracle的不断改进使Java成为一门更完美的语言》)

本月还发布了针对Kotlin和Java用户的轻量级Web框架Javalin,以及在开发过程中花费了大量时间的Apache Kafka。

在本月发布的针对编程语言2017年前三季度盘点中,我们总结了前三季度发布的所有权威排行榜,无论按照流行度、易用性、主流编程语言等各项指标排名,Java都是不变的前三名。(《2017年编程语言前三季度盘点:综合所有权威排行榜及调研结果!》)

当选2018年市场需求最旺盛编程语言首位的十二月

今年即将结束,只剩下几个故事可以讲述,比如下一个Java版本将被正式称为JDK 10。

本月,Coding Dojo发布了程序员最应意识到的前七大工作机会最多的编程语言。简而言之,这是对2017年市场需求最旺盛的编程语言的总结,也是对2018年的预测。根据数据显示,Java是2017年最受欢迎的编程语言,拥有6.8万个工作机会,但是这一数字将在2018年下降至6.2万。即便下降,该编程语言同样是市场需求最旺盛的。(相关文章:《2018市场需求最旺盛编程语言:Java、Python、JavaScript!》)

同时,本月也重申了Java在数据科学领域的地位。由于数据科学家的高需求,Python和R语言被认为是直接受益者,其实,Java在数据科学领域同样可以发挥巨大作用。另外,Buildship 2.2现在支持Java 9。(《强心针:Java在数据科学领域同样是王者!》)

展望未来

Java在未来一年还有哪些值得期待的事情呢?根据Oracle的计划,2018年3月底或4月初,Java 10似乎将准备就绪。新版Java最有可能包含的特性是目前处于目标状态或建议目标状态的JEP。主要涉及以下功能:

·局部变量类型推断

·将JDKForest 合并到单个存储库中

·垃圾收集器接口

·G1的并行完整GC

·应用程序类数据共享

·Thread-Local Handshakes

然而,未来一年到底会发生什么显然不是可预测的。对Java来说,2020年是伟大的一年,让我们共同期待接下来会发生什么吧!

个人主页领取多种电子书,实战文档,面试题



 

这篇关于旧文:年终盘点:Java今年的大事记都在这里!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/488412

相关文章

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

Apache Ignite 与 Spring Boot 集成详细指南

《ApacheIgnite与SpringBoot集成详细指南》ApacheIgnite官方指南详解如何通过SpringBootStarter扩展实现自动配置,支持厚/轻客户端模式,简化Ign... 目录 一、背景:为什么需要这个集成? 二、两种集成方式(对应两种客户端模型) 三、方式一:自动配置 Thick

Spring WebClient从入门到精通

《SpringWebClient从入门到精通》本文详解SpringWebClient非阻塞响应式特性及优势,涵盖核心API、实战应用与性能优化,对比RestTemplate,为微服务通信提供高效解决... 目录一、WebClient 概述1.1 为什么选择 WebClient?1.2 WebClient 与

Java.lang.InterruptedException被中止异常的原因及解决方案

《Java.lang.InterruptedException被中止异常的原因及解决方案》Java.lang.InterruptedException是线程被中断时抛出的异常,用于协作停止执行,常见于... 目录报错问题报错原因解决方法Java.lang.InterruptedException 是 Jav

深入浅出SpringBoot WebSocket构建实时应用全面指南

《深入浅出SpringBootWebSocket构建实时应用全面指南》WebSocket是一种在单个TCP连接上进行全双工通信的协议,这篇文章主要为大家详细介绍了SpringBoot如何集成WebS... 目录前言为什么需要 WebSocketWebSocket 是什么Spring Boot 如何简化 We

java中pdf模版填充表单踩坑实战记录(itextPdf、openPdf、pdfbox)

《java中pdf模版填充表单踩坑实战记录(itextPdf、openPdf、pdfbox)》:本文主要介绍java中pdf模版填充表单踩坑的相关资料,OpenPDF、iText、PDFBox是三... 目录准备Pdf模版方法1:itextpdf7填充表单(1)加入依赖(2)代码(3)遇到的问题方法2:pd

Java Stream流之GroupBy的用法及应用场景

《JavaStream流之GroupBy的用法及应用场景》本教程将详细介绍如何在Java中使用Stream流的groupby方法,包括基本用法和一些常见的实际应用场景,感兴趣的朋友一起看看吧... 目录Java Stream流之GroupBy的用法1. 前言2. 基础概念什么是 GroupBy?Stream

SpringBoot监控API请求耗时的6中解决解决方案

《SpringBoot监控API请求耗时的6中解决解决方案》本文介绍SpringBoot中记录API请求耗时的6种方案,包括手动埋点、AOP切面、拦截器、Filter、事件监听、Micrometer+... 目录1. 简介2.实战案例2.1 手动记录2.2 自定义AOP记录2.3 拦截器技术2.4 使用Fi

最新Spring Security的基于内存用户认证方式

《最新SpringSecurity的基于内存用户认证方式》本文讲解SpringSecurity内存认证配置,适用于开发、测试等场景,通过代码创建用户及权限管理,支持密码加密,虽简单但不持久化,生产环... 目录1. 前言2. 因何选择内存认证?3. 基础配置实战❶ 创建Spring Security配置文件

Spring Security 单点登录与自动登录机制的实现原理

《SpringSecurity单点登录与自动登录机制的实现原理》本文探讨SpringSecurity实现单点登录(SSO)与自动登录机制,涵盖JWT跨系统认证、RememberMe持久化Token... 目录一、核心概念解析1.1 单点登录(SSO)1.2 自动登录(Remember Me)二、代码分析三、