Few programming languages make it past 20 years and still retain high popularity. But Java has managed to remain widely used in many contexts because of its evolution—not just of the language, but of the larger direction of the ecosystem. None of this is clearer than in the advent of GraalVM, an ahead-of-time native compiler for Java code that coincidentally is written in Java and supports many other languages—both JVM-based and native. To understand how to use Graal for your own projects, see our article on page 17.
In the enterprise, Java EE has moved out from Oracle’s aegis and is now hosted at the Eclipse. Foundation under the name of Jakarta EE, which we examine in detail (page 26) in anticipation of its upcoming 1.0 release.
Much of Java’s success comes from new tools contributed as open source. Hystrix from Netflix is an excellent library for assuring uptime in distributed apps— especially microservices. Our coverage of Hystrix (page 37) shows its benefits and elegance of implementation.
Finally, we look at one of the most exciting platform developments: running Java apps on power-sipping ARM processors. As our article (page 54) demonstrates, migration of existing code is not difficult, and on recent chip releases, it does not entail a compromise on performance.
We also include the next installment (page 66) of our series on design patterns, this time covering the Visitor pattern. And of course, this issue includes our usual quiz (page 76), editorial (page 5), and a book review (page 8) of an unusually interesting volume.
Previous edition of Java Magazine on Libraries, Choosing The Right One