2

In 2013, Oracle published this article, JavaFX Architecture.

The text covers these areas:

  • Scene Graph
  • Java Public APIs for JavaFX Features
  • Graphics System
  • Glass Windowing Toolkit
  • Media and Images
  • Web Component
  • CSS
  • UI Controls
  • Layout
  • 2-D and 3-D Transformations
  • Visual Effects

And the article shows a summary diagram:

diagram of JavaFX architecture

Is the content of that article still a correct description of JavaFX in the era of version 20?

jonrsharpe
  • 115,751
  • 26
  • 228
  • 437
Basil Bourque
  • 303,325
  • 100
  • 852
  • 1,154

1 Answers1

4

Yes.

Everything in the original JavaFX architecture article is relevant and correct today.

I think the original Oracle documentation for JavaFX 2 and 8 has held up very well. It is still the best documentation on JavaFX around.

Unfortunately, Google searches often turn up the Java 2 versions of the documentation. Some of the documentation was revised and improved for Java 8. For instance, here is the Java 8 version of the document you reference in your question:

In reviewing the document I do not see anything which is incorrect or obsolete about it.

Recent architectural changes for JavaFX are mostly related to utilizing new underlying features provided by the Java platform and how JavaFX integrates with them. For example, the use of Java modules and lambdas with JavaFX. The core way JavaFX works has not changed at all, though the way it is packaged and delivered has.

The main change here is that JavaFX was modularized and removed from the JDK platform.

Additional topics that I think should be summarized in a JavaFX architecture document:

  • How JavaFX integrates with the Java platform module system.
  • An overview of the packaging and deployment architecture for JavaFX.
  • A discussion of available target platforms and how JavaFX operates on them.

For recent documentation, you can refer to openjfx.io and FXDocs. The openjfx.io getting started document discusses various modular and non-modular development scenarios in excruciating detail. But, for an overview of the JavaFX architecture itself, the document you reference is still the best.

Basil Bourque
  • 303,325
  • 100
  • 852
  • 1,154
jewelsea
  • 150,031
  • 14
  • 366
  • 406
  • I posted a follow-up question… [*Does JavaFX use the new Metal-based rendering for Java on macOS?*](https://stackoverflow.com/q/76825116/642706) – Basil Bourque Aug 03 '23 at 05:39