4 ms·
I'll take the opposite side of this having been doing cross-platform dev for a really long time: you will never successfully achieve a cross-platform GUI platfo
by potatolicious 5y ago
I'll take the opposite side of this having been doing cross-platform dev for a really long time: you will never successfully achieve a cross-platform GUI platform that is so successful at emulating the native platform that users can't tell the difference.
You can try pursuing it, but it is a field littered with the dead project before you that have tried the same thing. Xamarin, Flutter, Qt, React Native, the list goes on. Some of these projects are mostly-dead, others are heavily used but no user is actually fooled.
I would propose something different: for Java to develop their own design language, which has "good enough" native platform integration but otherwise doesn't try to pretend. Cross-platform platform users generally belong into two camps:
- Ok with something that appears visibly different from true native apps, but the cost savings are worth it and the users don't care so much about native-feeling-ness.
- Under the expectation that their cross-platform app will be so good that it is totally indistinguishable from a true platform-native app.
My contention is that Java (and other xplat projects) should focus on the first group; the second group is not worth serving because it has always failed, and will always fail.
The problem with the state of Java GUI development isn't so much that it fails to emulate the native platform GUI sufficiently, it's that it's ugly and janky. Improving it should be the goal.
- jjtheblunt 5y ago> for Java to develop their own design language JavaFX is not that?
- 7steps2much 5y agoThere was swing before that as well!
- jjtheblunt 5y agoAWT before Swing, too, and it worked really well back when there were green threads (comparable it seems to the return of userspace threads in Project Loom?).