top | item 39662568

(no title)

staticlibs | 2 years ago

None of major Java/OpenJDK contributors (Oracle, Red Hat, SAP etc) care about desktop GUI Java libs. Jet Brains do care, but they are not major. All Java progress is concentrated on backend cloud services for 10-15 years already. This can explain why Swing is so underdeveloped and JavaFX was thrown away. Basically much more effort is required to make Java GUI look and behave nicely, comparing to Delphi/Lazarus or .NET GUI libs or Qt.

discuss

order

datavirtue|2 years ago

Swing underdeveloped? You have been misinformed. The entire JetBrains suite is built in Swing and is top of the line. Swing is under active development, has a strong third party ecosystem, and is rock solid. You can do anything you want to do in Swing, and it is a joy to develop with (unlike any/all of the web front end nightmares).

What .NET GUI libraries are you referring to because anything other than WPF is tetering on "not a good idea." Have you built anything in Swing, WPF, Winforms, Xamarin Forms, or MAUI? You should give them all a serious test drive and get back to us with some informed comments.

adra|2 years ago

I just had to pick up and build a UI product in java recently and picked up javafx for the first time. With Kotlin, I actually found it while using my the standard you builder to be quite intuitive and sorta dynamic enough to make development snappy. Definitely the best attempt at GUIs for java, but sad that only smaller shops are actually investing any real effort into the space. Oh and java native + javafx is a pain in the ass until I discovered Bellsoft NDK, which made building a binary from source 100% so much easier.

PlutoIsAPlanet|2 years ago

DataGrip does look visually better than Dbeaver, but I've found Dbeaver has much better performance.

pachico|2 years ago

I'm ignorant about this all. Can't you use something like Qt in Java?

adra|2 years ago

You can, but anything in java that needs to step down into c/c++ ends up being a major pain in the ass so it's usually implemented half baked at best. Platform ergonomics are hard and you usually find that what works great in some languages / paradigms just don't flourish in others. It'd be nice to see some good language bindings that feel right for java.

gbear605|2 years ago

There are Qt bindings for Java, but I’m not familiar with them

elric|2 years ago

Jet Brains care? Do they? In my experience their tools are some of the ugliest out there. Granted, that's highly subjective, but there is "something" off about IntelliJ that I can't really put my finger on. Maybe the lack of whitespace. Maybe the weird tabs.

staticlibs|2 years ago

I meant that Jet Brains do care about GUI support in OpenJDK (mainstream Java), their flagship products depend on this, they employ a number of ex-Oracle GUI devs and contribute fixes upstream. Just there are no new major projects in GUI area in OpenJDK for years, because none of big contributors is interested in it. Compare this to improvements in non-GUI areas like Java 21 Threading and also the whole Graal thing.