The official distribution of Java 19 made its debut today at Oracle’s JavaOne conference in Las Vegas. The new version includes some significant improvements to simplify developers’ lives while speeding up some of the complex server-side tooling so that it can take advantage of modern hardware, especially the most parallel options.
If Java’s version number seems to be increasing faster than in the past, it is. Oracle is committed to rolling out new official versions of the language twice a year. By keeping this rhythm, new improvements can find their way into the ecology and reach implementation.
“We are excited about this release,” said Georges Saab, senior vice president of Java development at Oracle. “It’s the 10th release we’ve done under the six-month cadence and we’ve been doing that for about five years now. We’re very happy that all those releases came predictably, on schedule, on the scheduled date. We are very happy with the process that has given us to get new features into the hands of Java developers faster.”
The rivalry between programming languages
Java competes with several other major programming languages for the hearts and minds of developers and the C-level executives who write the checks. The language has a reputation for being a bit long-winded, while delivering rock-solid and fast performance across a wide variety of chips and architectures.
An open community and a closed enterprise version
The rollout of the official version is getting a little more ceremonial. The improvements have been circulating as experimental versions for some time now. Oracle wants to engage developers through what it calls the Java Community process so that the language evolves with the needs of the developer community. Some of the major improvements are tagged with words like “Preview” or “Incubator” to indicate that they can change faster than other, more stable parts of the codebase.
“This is due to our commitment to building trust in the Java ecosystem,” explains Saab. “Things being done in the open JDK community led by Oracle engineers and developers can see all this work happening as it happens. They can read the mailing lists, understand, listen to the design discussions and see every change in the code as it comes in.”
While Oracle continues to emphasize and nurture the open source developer community that has grown around Java, they are also pushing a paid option for enterprise customers willing to pay for better performance and care. The Java SE Subscription option entitles paying customers to the GraalVM Enterprise version of the VM, as well as access to Java Management Service, a system for monitoring deployed code.
Virtual threads and more improvements
Teams building server-side stacks will want to evaluate the virtual threads and structured concurrency tools that emerge from what Oracle called Project Loom. These virtual threads can be easier to start up and shut down. In the past, Java’s default model assigned one OS thread to each incoming request to a server, an architectural model that allowed all requests to be handled independently. The problem, however, is that each thread consumes memory and the size of RAM effectively limits the number of requests a server can handle.
Lately, some simpler technologies like Node.js have been gaining conversions by avoiding the threading model, allowing them to process much larger amounts of simple requests with often dramatically less RAM. The new virtual threads make it possible for Java developers to match this performance.
Another area that will attract attention is the ability to achieve new forms of hardware. First, Oracle will roll out a version of the Java VM for the RISC-V, a chip architecture increasingly found in some of the new highly parallel chip designs. It’s not uncommon for some chip designers to talk about packing more than 1,000 RISC-V cores that can work independently of each other. Java’s new VM makes it possible for Java developers to write code for this platform, which is expected to attract a lot of attention from artificial intelligence (AI) researchers, who often want to use highly parallel chips like this to drive AI. train models.
At the same time, the new version of the language includes a vector API that makes it easier for programmers to write code that breaks large blocks of data into chunks. The Java VM will be able to map these to the correct cores in compatible hardware, allowing the code to run much faster when the correct hardware is available.
Some of the other new features include revisions to the Java language itself that simplify some of the syntax and also add more structure that can help prevent bugs. Java 19 marks the final rollout of some of the new ideas that were part of what Oracle calls Project Amber. New record patterns are now available in preview in Java 19. These can simplify the creation and management of some of the software-googled data structures.
Oracle is also adding better tools to connect Java code with code written for other languages. They strengthen the interface for foreign functions, making it easier for programmers to create hybrid software packages that take advantage of the best features of different languages.
Java platform: both stable and under development
While much of the focus will be on reaching development milestones, Oracle also wants to emphasize their continued commitment to creating an open community around the language. They understand that the decision to invest in software languages evolves over the years and programmers crave a platform that is both stable and constantly evolving to meet the latest needs. Oracle invests as much in building this community as it does in the software improvements that come out of the process.
“We’ve reached our 1,000,000th certified Java developer, so that’s an exciting milestone,” said Chad Arimura, vice president for Java developer relations at Oracle. “We think that part of our technology and innovation strategy around trust, innovation, predictability – you know, important core values – we think this applies to the community too. Trust that there will be a community around you, innovation and to ensure that we continue to innovate the channels we use to reach those developers, and predictability to ensure that we continue to invest in existing programs that Java developers can use.”
The post Oracle is overhauling to Java 19 for speed and stability appeared first on Venture Beat.