JavaFX 15: “The cross-platform capabilities of JavaFX should not be underestimated”
Now that JavaFX 15 has been released, let’s take a look at some of the newest features. We spoke with Java Champion and Gluon co-founder Johan Vos to learn all about the latest JavaFX release, what to look forward to in JavaFX 16, and why JavaFX has a competitive edge.
JAXenter: JavaFX 15 has been released, can you tell us what new features it consists of?
Johan Vos: As always, the primary focus is on stability, and keeping the JavaFX APIs and their implementation up to date with hardware and software evolutions. That means that when new hardware or drivers are available, we make sure JavaFX can leverage them.
For example, in this JavaFX release, 3D support for newer intel drivers and support for e-paper displays on i.MX6 devices has been added. There is also increased support for static images on the different platforms. This makes it possible to leverage the JavaFX platform in applications that are compiled into native images.
In this release, 90 bugfixes have been applied, 9 enhancements, and 3 security fixes.
JAXenter: What is your favorite new feature?
Johan Vos: The support for static images is very exciting. With the increased interest in compiling Java applications to native code, thanks to GraalVM native-image, there is a huge opportunity for JavaFX. JavaFX applications that are compiled into native executables have an excellent startup time and peak performance, and they don’t require the end user to install neither the JavaFX SDK or the Java SDK.
JAXenter: Java – as well as JavaFX before – is now hosted on git/Github. How big is the impact of this transition?
Johan Vos: Looking back at the experience we had with JavaFX, I think the development of Java itself doesn’t change a lot. The major challenges when working on a project like Java or JavaFX are not related to the infrastructure that hosts the repository. Creating and especially reviewing commits, making sure regression tests capture potential issues, etc are more difficult.
There will be an impact on the perception though. Although the OpenJDK code, just like the OpenJFX code, was already publicly available, it became more accessible, since many developers are already familiar with GitHub.
JAXenter: JavaFX 16 will be released next year, can you give us a little insight on what to expect?
Johan Vos: The main goals are the same: we want to make sure we keep supporting new hardware and software, with a focus on stability and backward compatibility. Companies that invested in JavaFX, or that consider investing in JavaFX, should be guaranteed that their code will still work in a secure and performant way.
Johan Vos: That impression was created when Oracle stopped offering Long-Term Support for JavaFX. What people overlook, is that this doesn’t mean that Oracle no longer believes in JavaFX. On the contrary! At Gluon, we have a good working relationship with Oracle. We have taken over the responsibility of offering LTS for JavaFX.
The strong focus of JavaFX on stability, security, backward compatibility is a real advantage for companies that invest a lot in a client product, and they want to make sure that the product keeps working for a number of years. Combined with the Long Term Support that is offered by Gluon, this makes JavaFX a real business-friendly technology.
JAXenter: Why is JavaFX still a relevant technology?
Johan Vos: We believe that GraalVM will give JavaFX a boost. With Gluon, we’ve created a tool, Substrate, that is built on top of GraalVM Native Image. It allows you to compile and link Java code to native applications that run on the desktop, iOS, Android, and embedded. Java developers will no longer have to learn how to use hyped frameworks such as React. Native or Flutter. They can choose to work in an environment that consists of Java from the back end to the front end. This will allow them to build more robust and stable applications.
We can learn a lot from the mobile development world, and one of the things that make the mobile app world working is the idea of self-contained applications. Mobile users don’t need to download SDK’s or libraries. They simply select apps, and the apps should contain whatever is needed to run. This is what we do with Gluon Substrate, not only on mobile, but also on desktop. The fact that we use this mobile approach on desktop as well, makes it easier for Java client developers to deliver their Java applications to desktop systems, without requiring the user to install other libraries.
JAXenter: What is its “killer feature”?
Johan Vos: The cross-platform capabilities of JavaFX should not be underestimated. The same code that works on a Windows desktop, runs on an iPhone or an embedded Linux system. This makes development much easier and cheaper. Developers can use their existing and well-known IDE’s to develop applications for different platforms.
In general, the fact that JavaFX is Java means that all the “killer features” of Java apply to JavaFX as well, including the focus on security, stability.
Thanks very much for talking to us!