Hacker News new | ask | show | jobs
by zerr 3039 days ago
Both Qt and wxWidgets have bindings for a bunch of languages. Also, in case AOT compiler comes to Java, JavaFX and Swing might become viable options as well.
2 comments

In many times bindings are:

* incomplete

* immature

* not up to date

and definitely out-of-tree, aka not maintained by the folks that make the original toolkit.

Would you bet your company on those bindings?

Agreed, Qt binding are only officially supported for C++ and Python is a major player here as well, Golang has quite good bindings but a few minor methods per class as still missing, it's good enough to write a major desktop app tho.
Yes, but some of them are of very high quality, such as wxPython or PyQt.

And to be honest, modern C++11/14/17 is quite a different language, more friendly to beginners compared to 90s C++ people remember.

Writing C++ with wxWidgets or Qt really feels like Java or C# with their batteries.

There are bindings and there are bindings. I'd bet my company on PyQt - if anything I'd say bugs get fixed there quicker than in Electron. But part of the reason for that is that PyQt is a commercial (dual license) project with a dedicated company behind it.
>Also, in case AOT compiler comes to Java

What? AOT is available in Java even on Debian, the next step is Java-on-Java stack. HotSpot is about to be deprecated in 4 weeks once Graal becomes default for all platforms in Java10.

> java --list-modules | grep aot

> jdk.aot@9-Debian

I'm not in Java world, but I remember there were talks about future AOT awhile ago - is this a thing now? i.e. you don't have to ship the whole JVM, and no more bytecode, just a native executable?

If this is a thing now, supported and official - why it's not more popular? (or maybe I'm wrong).

Because of the crowd that doesn't want to pay for AOT compilers.

The majority of commercial JDKs always supported AOT to native code, only Sun did not, as they were religiously against AOT.

Oracle thankfully thinks otherwise, has kept sponsoring MaximeVM research, which became Graal and SubstrateVM, and now they are in the process of even re-writing the C++ parts into Java (Project Metropolis).

>I remember there were talks about future AOT awhile ago - is this a thing now?

Yes, AoT is now supported in Java out of box. Java after Jigsaw projects is modularized and you can build an executable file, like .exe or .bin which contains minimal JVM in it with JVM modules and your own modules and it's dependencies. You can read more about it here https://steveperkins.com/using-java-9-modularization-to-ship...

>If this is a thing now, supported and official - why it's not more popular? (or maybe I'm wrong).

Probably because a lot of developers still think Java is slow, many peoples opinion on Java is from 10 years ago. AoT was officially released in OpenJDK a few weeks ago, so as you can see, a lot of people don't know about it yet.