> > And then there are GroovyFX and ScalaFX, which embed the declarative > UI language in the host language. To me, FXML seems to be just > compensation for the lack of expressiveness in Java.
I think the main benefit of FXML is that Scene Builder and programmers can both work with it directly, regardless of which programming language the host app is written in. If there was no FXML and just things like ScalaFX, a visual UI builder would be a hopeless proposition. And I do believe SB is a valuable tool for several reasons: 1. It's still much easier to get a layout looking exactly how you want with a visual designer. Even though JFX layout is more intuitive than most layout mechanisms I've used, it's still faster to do things visually. 2. For newbies to the framework i.e. almost everyone, a visual designer helps you explore the capabilities of the framework and is much easier to learn with than raw FXML + autocomplete. Of course once you master the framework this doesn't apply any more, but is still very important to start with. 3. For apps that have a split between the programmers and the visual designers, a tool is critical. 4. If/when SB eventually gets support for animations, that's another thing that's just a lot easier to do visually. That said, I'd love it if SB could have "Export to Java", "Export to ScalaFX" etc options too, if only because loading FXML seems to be kind of slow.
