Like Java 8 and Java 11, Java 17 is a long-term support version. LTS versions offer Oracle support for longer than non-LTS versions because the company releases non-LTS versions every six months. This means that these shorter-term versions support Oracle for only six months until the next version is released.
On the other hand, the company releases LTS versions every three years, meaning that these versions offer Oracle support for three years until the next release. The official launch of Java will be in September 2021, and it will have some additional features that make it different from an earlier version.
JEP 356: Enhanced Pseudo-Random Number Generators
This brings a new interface to the picture. It also introduces the implementation of Pseudo-random Number Generators (PRNGs). The PRNGs include newly introduced splittable PRNG algorithms (LXM) and also jumpable PRNGs.
The objective of this addition is to make it possible to use different algorithms for different apps. The new addition also makes it easier to support programming that is based on streaming. It also sustains the actions of java.util.random class further than it is typically maintained.
JEP 382: New macOS Rendering Pipeline
JDK17 has an Apple Metal framework instead of the older OpenGL library. This library (Open GL) was deprecated when Apple released macOS 10.14. JEP 382 is a rendering pipeline designed to restore a functioning rendering pipeline.
The new rendering pipeline is intended to provide you with a performance equal to or better than the deprecated OpenGL. It is noteworthy that JEP 382 will co-exist with OpenGL until OpenGL is finally discontinued.
JEP 391: macOS/ASrch64 Port
The purpose of JEP 391 is to enable JDK 18 to comply with the new architecture of Apple devices. This is to comply with Apple’s intention to stop using Intel x86 – 64 and instead use the ARM64/AArch64 architecture. This transition period ends in 2022, and JDK17 will still be in the market, and it needs to be primed to work accordingly.
It is noteworthy that it will be possible to run the Apple operating system using the old ports, but its performance will be much better than when you match the OS to the new architecture. The reduced performance will be because the Rosetta 2 translator would require making the old architecture compatible with the new.
JEP 398 Deprecate the Applet API for Removal
Many web browsers no longer support Java-based browser plug-ins. The browsers that have yet to drop the support for these plug-ins have earmarked them for removal. This means that Applet API will no longer be valid and Java has, therefore, marked it for removal; thus, there will be no Applet API after JDK 18.
It is important to note that browsers determined to remove its support long ago, and Java, in response, deprecated it in JDK 9. It remained in its deprecated state in the subsequent versions, and only in this version has it been earmarked for removal.
Based in Shrewsbury, Massachusetts, Aditya Kapre is a software engineer in Greater Boston. Learn more about internships to software development.