霸王的大陆3.29版java_你能接受Java 9的下一个版本是Java 18.3吗?

原标题:你能接受Java 9的下一个版本是Java 18.3吗?

按照计划,Java 9 将于 9 月 21 日正式发布。还有一周时间,是不是很期待?

在 Java 9 这个重要版本之后,Java 又将如何继续发展呢?

Oracle Java 平台组首席架构师 Mark Reinhold 在博客上介绍了有关 Java 未来版本的一些想法。

从 1995 年发布至今,Java 已经走过了 20 多个年头。我们先来回顾下 Java 重要版本的发布时间:

JDK 1.0 (1996 年 1 月 23 日)

JDK 1.1(1997 年 2 月 19)

J2SE 1.2 (1998 年 12 月 8 日)

J2SE 1.3 (2000 年 5 月 8 日)

J2SE 1.4 (2002 年 2 月 6 日)

J2SE 5.0 (2004 年 9 月 30 日)

Java SE 6 (2006 年 12 月 11 日)

Java SE 7 (2011 年 7 月 28 日)

Java SE 8 (2014 年 3 月 18 日)

当然,不出意外,还有 2017 年 9 月 21 日的 Java SE 9。

仔细研究一下发布日期,你会发现一个规律——就是根本没什么规律!

Java 是用一个或多个重要特性来定义一个大版本的,比如 Java 9 的模块化,所以该版本也因为模块化开发面临的各种问题而一拖再拖。但是除了模块化,Java 9 还有很多小的特性,比如 jshell,AOT 编译等,而这些特性也必须等模块化完成后,Java 9 正式发布之时,我们才能享受到。

其实模块化本来计划放到 Java 8 中的,不过在 2012 年,Mark Reinhold 认为,如果想如期发布 Java 8,就得放弃模块化项目。他做了个比喻,如果火车到了发车时间,是等待所有乘客上车再发车,还是按时发车,让赶不上的乘客乘下一班?

所以,当时 Mark Reinhold 就希望 Java 的版本发布模式从基于特性改为基于时间,以两年为周期,发布新的版本。可惜理想很丰满,现实很骨感,从 Java 8 和 Java 9 的发布时间我们就能感觉到了。

回顾过去,Mark Reinhold 认为两年的周期还是太长了。想要稳定的发布节奏,速度要提上来。半年就不错嘛!

以半年为周期,持续发布新的版本,读者对这种模式应该并不陌生。比如 Go 语言,今年 2 月发了 1.8,8 月发了 1.9。每到一个新对周期,大家群策群力,讨论出下一个版本需要增加的特性,一起努力就好了。

还有一个比较典型的,Ubuntu,也是半年一个版本,而且是用年份和月份组成版本号,第一个版本是 2014 年 10 月发布的 Ubuntu 4.10,而最新版本则是今年 4 月发布的 Ubuntu 17.04。

Java 将采用什么发布模式呢?

Mark Reinhold 建议,在 Java 9 之后,采用严格的基于时间的模式,每 6 个月一个版本,每季度更新,每 3 年提供一个长期支持版本。

有几个要点。

新版本可以包含任何类型的特性,包括但不限于增加新 API,改进 API,语言和 JVM 上的新特性等。新的特性,只有在几乎完成的时候,才会合并到发布分支上,保证发布分支总是特性完备的。新版本将从 2018 年 3 月开始,于每年的 3 月和 9 月发布。

更新版本,将严格限制在修复安全问题、回退和新特性中的bug。每个新版本发布之后,在下一个新版本发布之前,会发布两次更新,分别在 1 月,4 月,7 月和 10 月。

2018 年 9 月发布的版本为长期支持版本,依此类推,每 3 年一个。提供 3 年或更长时间的支持。

关于版本号,Mark Reinhold 建议采用 $YEAR.$MONTH的方式,这样 2018 年 3 月的版本就是 18.3,9 月的版本就是 18.9 了。是不是跟 Ubuntu 很类似啊?

目前该提议已经提交给 JCP 执行委员会讨论。在邮件组里,目前也有些讨论,不过关注最多,但是实际意义并不大的,都是在纠结版本号的命名方式。

你能接受 Java 9 后的下一个版本是 Java 18.3 吗?

差点忘了,还有个好消息可以分享一下,Oracle 计划把一些商业特性(比如Java Flight Recorder )迁移到 OpenJDK。惊喜不惊喜?意外不意外?好,我们拭目以待。

参考资料:

1. Moving Java Forward Faster :https://mreinhold.org/blog/forward-faster

2. Faster and Easier Use and Redistribution of Java SE : https://blogs.oracle.com/java-platform-group/faster-and-easier-use-and-redistribution-of-java-se

3. Accelerating the JDK release cadence : http://mail.openjdk.java.net/pipermail/discuss/2017-September/004281.html

历史文章:

JDK 9第一个发布候选版本已出,可以尝鲜了

Java 9值得关注的新特性返回搜狐,查看更多

责任编辑:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值