Java is still incredibly popular after 27 years of its release by Sun Microsystems. According to numerous top programming charts, Java remains the second-most popular programming language in the world, trailing only Python. And to help you better understand what still makes Java so demandable, we’d like to show you Java “in dynamics” and how it advanced in 2022.
What New Java Versions Were Released? Let’s Review the Latest Java Editions
Newer Java versions now follow every 6 months. This year we saw the release of Java 18 in March and Java 19 in September. Take note that these are non-LTS versions: the latest *LTS edition, Java 17, was released in March 2021.
*LTS versions ensure only stability, security, and performance improvements but not new features. This is done to reduce the risk that an update might break interaction with a tool or library.
It’s worth emphasizing that before 2018, Java release cycles were much longer and might take up to 5 years. Yet, the world has become more dynamic, so to compete and succeed in today's turbulent IT environment, Java comes with upgrades much more frequently than later.
Java 18. What’s New?
If you’re wondering what shifts or changes we could see with Java 18 release, here they are:
UTF-8. Before Java 18, the operating system encoding was used for reading files without specifying an explicit character ending. No longer. UTF-8 became the default character set on all operating systems.
The jwebserver command. By using this command, users can quickly start a rudimentary web server.
The @snippet tag. With the help of this tag, you’ll be able to integrate source code snippets into your JavaDoc documentation.
"Internet-Address Resolution SPI." Using this, QA specialists can replace the standard resolver for IP addresses.
Added preview and incubator features "Pattern Matching for switch," "Foreign Function & Memory API," and "Vector API."
Simplified Web Server. Java 18 came with a rudimentary HTTP server that can be started with: jwebserver.
Java 19. What’s New?
Java 19 boasts a lot of novelty features
to offer to its users. Yet, among the most exciting ones, we can highlight:
- Record Patterns capability to extend pattern matching and express more sophisticated data queries.
- JEP 424, a new non-Java API for Foreign Memory Access.
- JEP 426 to improve performance with an API to express vector computations.
Also the long-awaited Virtual Threads
developed in Project Loom, Foreign Function & Memory API
, Structured Concurrency
and the Vector API
have finally appeared in Java 19. They are currently available in a preview mode only – this will change with the next releases.
State of Other Java Versions in 2022
There have been several significant changes in Java versions over 2021 and 2022. Many companies have shifted a large portion of their applications to Java 11. According to the New Relic report
, in March 2020, 84.48% of applications run in Java 8. Now 48.44% of applications are in Java 11 vs 46.45% of applications in Java 8.
Why are many companies still stuck with Java 8? There’s a mix of different reasons, from practical issues (upgrading your tools, libraries, frameworks) to policy issues.
Do note that these versions are long-term support, and the freshest LTS edition, Java 17, hasn’t yet established a solid position but has already surpassed the majority of non-LTS versions in the few months since its release. Non-LTS Java versions typically have low adoption, and only a few vendors ship patches on them (Azul Systems is the brightest representative supporting some non-LTS editions).
Today, only 2.7% of applications are running on non-LTS Java versions, and Java 14 is the king among them, with Java 10 and Java 16 being the least popular.
Java Developer Kit (JDK) Distributions in 2022
As Oracle’s popularity is decreasing, Amazon’s popularity is growing. In 2020, Oracle was the most popular vendor of JDK distributions, comprising roughly 75% of the Java market, but now its share has halved. Amazon has swiftly jumped to 22% of the market this year – up from 2.18% in 2020.
Other Important Upgrades in Java World 2022: Spring Framework 6, Spring Boot 3, and Jakarta EE 10 Release
When it comes to Java-related news, we couldn’t skip the releases of Spring Framework 6 and Spring Boot 3. VMware developed the new Spring Framework 6 for five years and with its release, VMware has probably started a new generation for the Spring ecosystem.
Spring Framework 6 requires Java 17 version and Jakarta EE 9. Plus it supports the freshly-released Jakarta EE 10, which makes it compatible with the latest web servers like Tomcat 10.1, Jetty 11, and Undertow 2.3.
The new Spring Boot 3, in turn, is compatible with Spring Framework 6 and has support for producing native executables (start more swiftly, use less memory, have tinier container images, and better security). Hence, Java became more competitive in the cloud.
Speaking about Jakarta EE 10, its release goes hand in hand with Java 19 upgrade - September 2022. It aims to deliver a combo of specs for creating modernized, simplified, and lightweight cloud-native Java apps across the spectrum of Jakarta EE technologies. That is to say, Jakarta EE 10 really differs from its predecessors and provides new functionality in over 20 component specifications.
2022 Rankings in Details
This overview would be incomplete without glancing at top programming charts and Java positions this year:
According to the RedMonk Programming Language Ranking
of June 2022, Java holds its honorable 3rd place.
Please, note that RedMonk may not offer a statistically valid representation of current language usage since it extracts language rankings from GitHub and Stack Overflow, and then combine them for one ranking, attempting to show you “the real picture” (aka reflect both code (GitHub) and discussion (Stack Overflow) traction.
If we consider StackOverflow
only, Java here is the second high-end, object-oriented programming language following Phyton.
Yet, if we compare it with scripting and markup languages as well, Java will take the 7th place within this mix.
The Major change has happened to Java, according to the world-famous TIOBE index
, where C++ surpassed Java for the first time in its history (since 2001), meaning that Java is at position four right now.
Having just said that, if you look at the graphs, you’ll see that Java still experienced growth this year (1,70%). C++ also had +4,21%, which eventually allowed it to surpass Java a bit.
Yet, if we refer to the long-term TIOBE Index, we’ll still see Java being the third most popular programming language for a period of the latest 12 months.
Well, who knows, what will happen in the tech world during the next 12 months?
Ultimately, Java is an established programming language used by thousands of developers worldwide, having been adopted by companies of all sizes and spheres including finance, e-commerce, oil & gas sectors, education, healthcare, government, big data, and more. Still, we believe Java is far from reaching its saturation point as it’s continually moving forward with features that improve overall performance and extend its capabilities.
We predict that the language will continue to evolve and get a new identity with the rise of such innovative technologies as ML and AI.
So, what do you think will happen to Java in the next year? What was the highlight for the Java community this year?