4 ms·
Your statement isn't true of Qt or Java SWT or Java AWT. They don't have a main platform.
by discreteevent 9y ago
Your statement isn't true of Qt or Java SWT or Java AWT. They don't have a main platform.
- Klathmon 9y agoAnd I'd argue they don't run well on any platform... That's a bit inflammatory, but in my opinion it's true. Qt, and SWT applications look... off... in many ways, they feel wrong, and often times it gets in the way (like not using a native file picker widget from the OS). They can be made to work well on most platforms, but it takes a LOT of work.
- zamalek 9y agoAgreed. QT is by a very extreme margin the most competent I've seen. On an absolute scale, I'd still classify it as mostly incompetent. I still agree with the Mono team - your model and view model should be xplat, while your view should use platform-specific APIs. Android users don't expect Android interfaces to work like iPhone interfaces and visa-versa. You can do all the skinning in the world but the underlying workflow of the interface won't match the platform.
- s73v3r_ 9y agoAnd when used like that, they don't work that well, at least not Java. However, I would say that Java does have a home platform in Android, and the Android toolkit.
- dukoid 9y agoUnlike QT, SWT, or AWT, Flutter doesn't bind native widgets, but renders everything itself, so the way it works is more comparable to Swing though...
- hota_mazi 9y agoSwing is the perfect example that such approach simply doesn't work. At the bare minimum, you need to use the native widgets on each OS. It's baffling to me that Flutter didn't even learn this lesson from 20 years of agony with Swing.
- pjmlp 9y agoSwing is the perfect example of devs that don't bother to read documentation and just go with defaults. It can be made to look quite well, but yes the defaults are not the best and it requires graphics programming knowledge.
- Comevius 9y agoMost interesting apps tend to use custom Android views, layouts and behaviors to create a unique, but consistent look and feel. Flutter can do the same. There is not much difference, except that Flutter strives to do the unique part better. On the Windows desktop your application must be coherent with other applications, since they share a big screen, or rather a workspace. Either way you want to adhere to the design language of the OS, because it tends to work better than what you can come up with, and also provides familiarity. On Android you don't have to use the prebuilt widgets to adhere to the material design. Flutter also comes with widgets that look and feel very similar to the Android and iOS ones, so you don't have to reinvent the whole wheel.
- nogridbag 9y agoWhen I first got started with Java at a time when Javalobby was my Hacker News, there were endless rants and debates about Swing and native widgets. Yet, 20 years later Electron seems to have won the cross-platform platform and no one seems to care about native widgets - only memory usage!
- jcelerier 9y agoQt is exactly the same, it does not use native widgets bit reimplements them (and leverages the system APIs to get correct colors, icons, and sizes). but everyone seems to be hell-bent on reinventing qt every three years so ... :p