3 ms·
It's not that simple. You can go three routes: 1. Make the apps look pixel perfectly the same on all platforms - that's what the Java Swing did. Result - all t
by mateuszf 9y ago
It's not that simple. You can go three routes:
1. Make the apps look pixel perfectly the same on all platforms - that's what the Java Swing did. Result - all the apps feel "alien" and not native for the users.
2. Make all the apps look and behave native and use UX patterns consistent to the given platform. Result - you will have to program them differently.
3. Somewhere in between - all you get is mediocre GUI with not very pleasant development model.
So the problem is not with the GUI toolkits but with inconsistent UX paradigms between the platforms / different input models, interaction models, etc.
- Numberwang 9y agoI have no problem with things feeling alien, so that would be my preference. For example I love the Telegram desktop app.
- adolfojp 9y agoTelegram looks native on Windows 10 though. It was designed to look like a flat modern app and it excels at that, hamburger menu and all.
- Numberwang 9y agoHmm, the header bar doesnt look native to me (it looks amazing)
- pas 9y agoAlien would be okay, were it not ugly. Swing is unusable and ugly. Just look at and try to use a Swing file picker. ... Anyway, I'd gladly program them differently for closer to native experience, if it were easy to program. Currently it's either Qt (C++) or GTK (C), or completely useless/out-of-date bindings. And thus any glorified WebView reigns supreme.
- mateuszf 9y agoYeah, I agree - C/C++ are the reasons why Qt is not popular.
- seba_dos1 9y agoPython bindings for both Qt and GTK+ are really, really good. For other languages it sure is hit-or-miss though.
- pas 9y agoI started to type a rather pessimistic reply about how horrible it is to set up py3 + qt, but actually pip3 install pyqt5 works well now!