Reddit Reddit reviews Learn JavaFX 8: Building User Experience and Interfaces with Java 8

We found 2 Reddit comments about Learn JavaFX 8: Building User Experience and Interfaces with Java 8. Here are the top ones, ranked by their Reddit score.

Computers & Technology
Books
Computer Science
Learn JavaFX 8: Building User Experience and Interfaces with Java 8
Apress
Check price on Amazon

2 Reddit comments about Learn JavaFX 8: Building User Experience and Interfaces with Java 8:

u/mars-dev · 3 pointsr/learnjava

I agree it is tough to know exactly. There isn't a clear path like there used to be. I'd even concede to some of the comments below about "everyone moving away from locally installed desktop apps"...

But if you do find you need a desktop application and you are familiar with Java, I think JavaFX can work for you. It is tough with the recent changes regarding modules, JavaFX being dropped from Java releases (11+), and the new release cadence of Java itself. But it is still possible and there is active work in the community around it.

You are going to have to read and probably "dig" more than you would for a React application. There isn't a ton of new articles every day about JavaFX or Swing. That doesn't mean it doesn't work. It could just mean that it already works ;-)

Take a look at OpenJFX (https://openjfx.io/). The Gradle plugin mentioned in the Getting Started section is extremely helpful for getting starting with the latest versions of JavaFX; https://github.com/openjfx/javafx-gradle-plugin.

Scenic View is another tool that makes it easy to debug/understand your JavaFX application; https://github.com/JonathanGiles/scenic-view

If you go the route of building a desktop application in Java, or even .NET, it will be "lonely" compared to a web one. But in my opinion for certain applications it is still much more responsive and provides an enjoyable experience. Specifically I'm thinking of financial applications that have many tables and charts and "Excel like" functionality. These are also possible with web technologies, but if you want/need a desktop application and use Java, then JavaFX works great.

As for a book I'd recommend, I like "Learn JavaFX 8: Building User Experience and Interfaces with Java 8"; https://www.amazon.com/Learn-JavaFX-Building-Experience-Interfaces/dp/148421143X/ I found it to be faily comprehensive.

Good luck!

u/movie-editor · 2 pointsr/learnjava

If you want to stay in Python, you can try Qt for Python.

pip install pyside2

This will install everything you need to start building Qt programs. It works fine with PyInstaller.

If you want to use Java, in my opinion JavaFX is excellent. It's designed to work fine on desktop, mobile and embedded devices, so adapting to different resolutions won't be an issue thanks to layout panes and DPI scaling options.

If you have Oracle JDK 8, you can start developing JavaFX right away. But for production deployment you should use OpenJDK 11 with OpenJFX 11 and bundle your JRE with your application, for legal and technical reasons.

I find JavaFX easier to work with compared to Qt, including Qt Widgets and Qt Quick (either with C++, QML or Python).

JavaFX is basically a canvas where you can freely paint UI controls, 2D/3D graphics, videos, charts, etc. And you'll know it will look and behave consistently on all platforms.

Java itself is also a great ecosystem with many high quality libraries not available in Python or C++ land.

Learn JavaFX 8 book explains different concepts in JavaFX pretty well with many examples.

Hope I could help.