Oracle celebrates Java 19 ahead of Las Vegas meetup
Ahead of the upcoming JavaOne 2022 conference happening this month in Las Vegas, US – where developers can look forward to expert-led labs and talks about the latest tooling, including uses of the Vector AI for data parallel programming – Oracle has announced the release of Java 19. Having been around for 27 years, Java is packed with features and has a rich catalogue of APIs. Today, Java is claimed by some to be the most popular programming language in the world, although not everyone agrees. But its prominent position in software development and data analytics certainly remains.
Staying power
One of the big reasons for Java’s staying power is that, put simply, it helps people solve problems. And compared with languages such as C/C++ or C#, which was its main rival until the rise of Python, Java is straightforward to learn and allows coders to start building solutions within a relatively short period of time. The modular nature of the programming language also lends itself to code being easily re-used, which speeds up development across projects. What’s more, the investment made in learning the language can be applied over a wide range of sectors on earth and even in outer space – Java famously featured in NASA’s Mars Rover mission.
In the words of Oracle, “Java19…delivers thousands of performance, stability, and security improvements, including enhancements to the platform that will help developers improve productivity and drive business-wide innovation.” Specifically, JDK 19 delivers language Improvements from OpenJDK project Amber (Record Patterns and Pattern Matching for Switch); library enhancements to interoperate with non-Java Code (Foreign Function and Memory API) and to leverage vector instructions (Vector API) from OpenJDK project Panama; and the first previews for Project Loom (Virtual Threads and Structured Concurrency), which will drastically reduce the effort required to write and maintain high-throughput, concurrent applications in Java.
Drilling in a bit deeper on some of these latest additions, the Structured Concurrency feature set makes it easier for developers to manage multithreaded programming within their code. Benefits include streamlined error handling and cancellation, improved reliability, and enhanced observability (in other words, giving users a better chance of understanding what’s actually going on).
Speedy response
Improvements in the software are also designed to keep pace with whether deployments are in the cloud, on-premises, or both as part of a hybrid environment. Oracle’s latest Java releases follow a six-monthly pattern, where the US-headquartered software and IT services company aims to deliver on proposed features in a predictable fashion to avoid any unwelcome surprises. Java 18 was released in March 2022, for example.
The schedule allows the community to road-test, or preview, Java development kit enhancements proposals (JEPs). And the Java 19 release has several that are of interest when it comes to data processing – a huge part of IT software solutions for businesses in today’s information-rich landscape. Of note here are:
- JEP 405: Record Patterns (Preview): Enables users to nest record patterns and type patterns to create a powerful, declarative, and composable form of data navigation and processing. This extends pattern matching to allow for more sophisticated and composable data queries.
- JEP 427: Pattern Matching for Switch (Third Preview): Enables pattern matching for switch expressions and statements by permitting an expression to be tested against a number of patterns. This allows users to express complex data-oriented queries concisely and safely.
Team effort
Because Java has been around for so long, there’s a balance to be struck between providing new features that add innovation to the ecosystem and preserving the stability of the platform, which is a big appeal to enterprise clients who’ve been using the language for decades. And, as is so often the case, the secret to getting things right is teamwork.
In the announcement, Oracle makes clear that the Java 19 release has involved extensive collaboration, featuring members of the worldwide Java developer community via the OpenJDK Project and the Java Community Process (JCP), as well as the firm’s own engineers. The company also adds that Java 19 is supported by Java Management Service, which gives visibility of Java runtimes and applications across various host environments through a single pane of glass – a feature that will appeal to enterprises.
Upcoming developments include projects to further improve start-up time, boost performance through more efficient I/O management, and provide higher memory density to drive gains in machine learning (benefiting popular big data apps). Also in progress are updates in automatic memory management with low-latency garbage collection.
Java remains a good choice for developers, whether they are writing desktop apps, software for mobile devices, server-side web applications, enterprise solutions, or carrying out backend processing. And, thanks to its longevity, you can be confident that the Java features powering products released today will still be supported in the future, which builds resiliency and keeps business users happy.