专栏名称: CSDN学习
CSDN学院,IT人的终身学习平台。旨在为中国IT专业人员提供广泛、优质的学习内容,助你轻松玩转IT!
目录
相关文章推荐
百姓关注  ·  一地暴发大规模疫情,已致53死 ·  昨天  
贵州日报  ·  李炳军主持召开省政府常务会议 ·  2 天前  
51好读  ›  专栏  ›  CSDN学习

2021,Java越来越好了吗?

CSDN学习  · 公众号  ·  · 2022-01-11 08:50

正文

整理 | 丁广辉 责编 | 张红月
出品 | CSDN(ID:CSDNnews)


由James Gosling(Java之父)开发的Java已走过30个年头,它逐渐发展成开发者最常用的编程语言之一。尽管“ Java已 ”的论调常常出现在媒体头条,但它在各大语言排行榜上也始终处于前列。Java还曾夺得2005年以及2015年的TIOBE年度编程语言。近日权威软件开发杂志 SD Times发布的一篇Java 2021的文章,描述了Java 在这一年来的变化与发展趋势。

Java的发展进程

Java的首个版本于1995年面世,发展至今,Java已迭代更新了17个版本,目前最新版本是今年9月份发布的Java 17。在正式进入正文之前,先简单回顾一下Java的成长过程。

Java的发展进程要从1991年的Oak橡树开始,并在1995年更名为Java,发布Java 1.0版本。在1998,Sun将Java体系分为我们现在使用的三种:标准版(J2SE)、企业版(J2EE)和微型版(J2ME),随后在2005年,这三种版本又分别被更名为Java EE(现为Jakarta EE)、Java SE和J2ME。在2006年,Sun正式宣布Java开源,其实在Java代码发布之初,其源码便是可访问的。在Java 6发布之后,由于代码复杂性增加,JDK开源,经济危机等问题Sun在2007至2008两年间没有新版本发布。

2009年Oracle以每股9.5美元的价格将Java的开发公司Sun收购,至此Java易主。Oracle在2011年开始每隔三年发布一次Java版本。2014年发布的第一个LTS版本Java 8,更让许多开发者使用至今。2018年Orcale宣布每三年发布一次新版本更改为普通版本每隔半年发布一次,LTS版本已然还是每隔三年发布。

Java 8 被开发者弃用?

面对如此频繁的版本更新,开发者更偏爱哪个版本呢?由Snyk进行的一项 调查显示 ,开发人员逐渐开始从Java 8向Java 11转移。之前对Java社区的调查报告发现,开发人员在现阶段主要使用的为Java 8,而不是升级到较新的版本。根据调查,有61.5%的受访者在编程的某些地方使用Java 11,而12%的受访者在使用当时最新的Java版本,也就是之前发布的Java 15。而在这些使用Java 11的受访者中,有一半的人再创建堆栈的某些时候还是使用的Java 8。

不难看出,即使Java 11和Java 17两个LTS版本面世,也未能消减开发者对Java 8的喜爱。无论是函数式编程,还是对集合进行处理的Streams等特性,都让开发者使用Java编程更简单快捷,而且Java作为一门面向对象的编程语言,长时间使用Java 8的开发者都已经积累了大量的库,这些库让开发者可以省时省力高效地满足程序所需。无论是出于什么原因,开发者对Java 8的喜爱都证明了Java 8 yyds。

2021,Java这一年

在今年3月份,Java 16正式发布,引入了许多 新的增强功能 ,例如Vector API (Incubator)(JEP338)、支持C++ 14语言特性的(JEP 347)、基于值的类的启用警告(JEP 390)等17个功能。

6个月后,Java 17作为继Java 11之后的最新长期支持版本(LTS版本),在12月正式发布,该版本发布的14个JEP分别为:

  • 306:恢复始终严格的浮点语义

  • 356:增强型伪随机数发生器

  • 382:新的 macOS 渲染管道

  • 391:macOS/AArch64 端口

  • 398:弃用即将删除的 Applet API

  • 403:强封装JDK的内部API

  • 406:Switch模式匹配(预览)

  • 407:删除 RMI 激活

  • 409:密封类

  • 410:删除实验性 AOT 和 JIT 编译器

  • 411:弃用即将删除安全管理器

  • 412:外部函数和内存 API(孵化器)

  • 414:Vector API(第二次进行特性孵化)

  • 415:特定于上下文的反序列化过滤器

此外,Oracle还加强了对客户的支持,它与开发者社区合作,改进LTS版本调度,使企业在迁移到最新的LTS版本时能更灵活。而下一个LTS版本将是2023年9月发布的Java 21,这将使LTS版本发布周期从三年变为两年。

为了使Java的LTS版本更容易获得,Ooracle 修改了Java的使用许可证 。Java 17和以后的版本会免费提供,直到下一个LTS版本发布后一年。Ooracle公司也将继续根据开源通用公共许可证 (GPL) 发布 Oracle Open JDK 发行版。

Java 17的另一个焦点是加速Java在云环境中的应用。最近,Ooracle推出了 Java管理服务 ,这是一个用于管理Java运行时和应用程序的Oracle云基础设施(OCI)服务。据该公司称,它提供了对Java部署的可见性,突出显示了未计划的Java应用,并检查是否已经应用了最新的安全补丁。

据最新的Open JDK显示, Java18的部分功能也已经上 线 ,例如JEP-400:默认为utf -8,JEP-408:简单的Web服务器Java API文档中的代码片段,以及其他的7个更新。预计Java 18会再2022年3月22日正式发布。

企业级Java又站起来了?


Eclipse基金会执行董事Mike Milinkovich针对该基金会2021年 Jakarta EE开发者调查







请到「今天看啥」查看全文