3 ms·
I'm still waiting for a good cross-platform UI toolkit with good tools and ecosystems around it without resorting to C++ (Qt) or JS approach (atom/nw). C++ too
by edwinnathaniel 12y ago
I'm still waiting for a good cross-platform UI toolkit with good tools and ecosystems around it without resorting to C++ (Qt) or JS approach (atom/nw).
C++ tooling is behind its time (CMake, no dependency management) and JS approach seems kludgy right now.
Java was pretty close (JDK .. or NetBeans, support packaging to Windows or Mac AppStore) but the UI component for OSX is not pleasing and would be nice if it can produce something for Ubuntu/Redhat at least (don't care Arch or the rest at the moment).
Basically I want something better than what Oracle Java has to offer today :)
PS: I would require a great IDE, unit-testing/automation-testing, good scriptable build (Maven/Gradle style, not Ant/NAnt/MSBuild).
- damian2000 12y agoSounds like the only thing that would fit your bill would be IntelliJ IDEA using Java bindings for either wxWidgets, Qt or GTK+?
- ziahamza 12y agoI agree. Xamarin guys have done a great job at delivering cross platform UI, making C# first class on most platform, but their API's still lag behind .Net official framework and are stuck to the .Net 4.0 era.
- mike_hearn 12y agoYou should look at JavaFX. I just finished an app based on it. It's the official replacement for Swing and is quite WPF like in nature (scene graph oriented, etc). Although there are skins that can make it look native on each platform, I didn't bother with this for my app. Trying to match native on a cross platform app is a fools errand. A few months after you ship your app, the OS developers will decide to reskin everything and anything not using their native toolkit will look out of place. So my app takes its inspiration from Twitter Bootstrap and just doesn't even try to look native. You can skin JavaFX with CSS so it's quite easy to match the look, at least in some ways. Nobody has complained and quite a few people said the app looks great. I would definitely do this again for my future apps. Pick a nice design that isn't native to any platform in particular, and people won't hate you for it. BTW Java now comes with a packager tool that makes self contained native installers which don't depend on the user having Java installed. Deployment is a lot more practical these days.