3 ms·
Aren't android UIs predominantly Java?
by lumost 5y ago
Aren't android UIs predominantly Java?
- DaiPlusPlus 5y agoAndroid's "native" UI library has hard dependencies on key components of the Android OS that go far beyond what can be provided by any random Java JVM/JRE (i.e. you can't simply use Android's UI .jars almost anywhere like we can with AWT and Swing). Saying "Android's UI is Java" is like saying "Apple's macOS Cocoa is x86" - technically true, but belies the sheer volume of transitive dependencies.
- mike_hearn 5y agoThat's true of classic Android UI, which isn't that great anyway. The new JetPack Compose ui toolkit is cleanly abstracted from Android and works on the desktop as well.
- datavirtue 5y agoYeah, as are some of the most popular and modernized desktop apps. I'm always astounded by these posts. Java has two modern UI frameworks. Swing and JFX. They blow Microsoft's offerings out of the water--while being proven cross-platform.
- DaiPlusPlus 5y ago> Java has two modern UI frameworks. Swing and JFX. They blow Microsoft's offerings out of the water--while being proven cross-platform. I hope you're being sarcastic there... Swing is decidedly not "modern" at all: its active development period only lasted from 1998 ended by 2005, and saying that Swing is "cross platform" is really overselling it because it always looks out-of-place, if not downright hideous (default skin) on every platform; While JavaFX is/was so unpopular that it was removed from Java SE and Oracle will stop supporting it by 2025.
- kaba0 5y agoRegarding the microsoft part, how can anything not look out-of-place, when their own settings appS have like 5 different GUI design here and there. Otherwise, JavaFX was axed from the JDK because there is absolutely no reason to tie a frontend lib’s lifecycle to that of the JDK’s. Swing could not be axed due to the insane amount of dependencies on it, but JavaFX has it in a way, better as being developed separately. And even though it is not huge in terms of marketshare, it is doing good with proprietary solutions, cross-platform compilation to web, desktops, and both android and ios being available.
- luciusdomitius 5y agoWell, which ones. I use IntelliJ and SQL Developer. While the first one is one of the best tools in the toolbox, it still has problems with global menus, dpi and pretty much everything very platform specific. Using xfce probably doesn't help. Truth is that the only advantage Desktop Java has over electron is that it is a bit faster and less leaky, but the advantage above Qt is only that you don't need to learn C++.