Qt Quick vs Flutter
-
Hello all,
Why do you think Qt Quick is better than Flutter for Android and iOS apps? What are the advantages and disadvantages of Qt Quick over Flutter for that area, please? How about apps for embedded devices by the two?
I did a research on the Web for the case but couldn't find a comprehensive and good answer.
Thanks beforehand.
-
@tomy said in Qt Quick vs Flutter:
Why do you think Qt Quick is better than Flutter for Android and iOS apps? What are the advantages and disadvantages of Qt Quick over Flutter for that area, please? How about apps for embedded devices by the two?
IMO none is a clear winner. Flutter is still a "baby", but it is growing fast. Qt has the advantage of working on more platforms, but has inferior licensing, is somewhat harder to set up and produces bigger binaries (on mobiles I mean). For Qt developers, QtQuick is a good choice because they already know it, and it integrates with C++ backend seamlessly.
-
Thank you for your fair reply.
If both QtQuick and Flutter are new for a person and he/she is aiming at choosing one of them for creating various apps for Android, iOS and Embedded platforms, and wants to continue programming on this way to be a great developer in the future, which one would you suggest to him/her to start with, please?Or, which one would you choose if you were him/her, please?
I'm sure the languages they use (C++ and Dart) are different and may have a large impact on the performance of the resulting apps. Isn't it? -
I don't know enough to say.
All people I know of who tried Flutter have said "it's great, but...". Most people will say the same about Qt. I don't know.
Flutter is backed by a bigger company. Dart is really fast and Flutter's architecture is very performance-oriented, too (no need to be concerned about performance much, I think). So for newbies I'd probably suggest Flutter. Qt is great, but C++ is hard, especially in the beginning. And here you have to learns QML, Qt and C++ (and certain platform quirks) so I think it's not too attractive for beginners.
-
All people I know of who tried Flutter have said "it's great, but...".
It's great but what? I think that might be an important point about Flutter from the standpoints of those who have experienced it.
And one side question. Do you think if the situation carries on this way, Qt devs (those who use it for mobile and embedded devices) will change their direction in favor of Flutter?
-
@tomy said in Qt Quick vs Flutter:
All people I know of who tried Flutter have said "it's great, but...".
It's great but what? I think that might be an important point about Flutter from the standpoints of those who have experienced it.
Usually they mention some small quirks :P I don't remember anything specific. My point was that both Qt and Flutter have their problems as of now.
And one side question. Do you think if the situation carries on this way, Qt devs (those who use it for mobile and embedded devices) will change their direction in favor of Flutter?
It may happen. Qt Company seems to be totally uninterested in mobile platforms, development on this front is very slow. Flutter can easily and quickly overtake Qt, plus it has easier licensing. In company I work for we are considering switching to Flutter for mobile-only projects. But again, at this point, no actual decision was made.
-
@tomy said in Qt Quick vs Flutter:
and embedded apps!
I have not said that. The main focus of QtC is on embedded right now, it seems.
-
@KroMignon said in Qt Quick vs Flutter:
@tomy said in Qt Quick vs Flutter:
QtC?
I think QtC ==> Qt Company :)
Yes, I have meant Qt Company.
-
@tomy said in Qt Quick vs Flutter:
@LeLev
Felgo, unlike Qt open-source, gives you almost nothing freely. :(
They have to eat something ;-)
Plus, then it comes to mobiles, Qt on iOS is not free anyway (and using LGPL on Android is tricky, too).
-
for me the decision is clear: I'll use Qt for mobile
have developed some very complex apps for customers out there running on thousands of devices
always mobile biz apps, running in-house
all my apps developed with QtQuickControls2 (QQC2) are very performantmy subjective personal POV: comparing flutter UI code and QML Code --> QML Code is much easier to read.
I never studied C or C++, developed 10+ years with Java
then with BlackBerry 10 / Cascades first time had to deal with Qt-C++ and it is really easy to understand
as BlackBerry faded away some years ago I started with Qt and QQC2 - UI in QML, biz logic, network, ... in C++Material style looks good on Android and iOS - my apps are running from lowcost-Android up to iPad 12.9 pro, in many cases together with Bluetooth devices (Scanner, Printer, eCards, waiter lock, ...)
It toom a while to understand QtCreator coming from so many years using Eclipse IDE, but finally I must say QtCreator is great for x-platform mobile development
upcoming Qt 6 with reduced QML 3 will provide an even more performant environment (QML automatically by magic compiled to C++) and better content assist while hacking code. I'll port all my apps to Qt 6 / QML3 and start a new blog series about, probably also working on a book Qt6-for-mobile later this year)
so if starting new I would give Qt a try
-
Great info, @ekkescorner , as always! Thanks for chiming in.
in many cases together with Bluetooth devices (Scanner, Printer, eCards, waiter lock, ...)
Lucky you. My experience with BT support so far was really bad, but it wasn't fully Qt's fault. All OSes treat BT differently, have different bugs etc. Maintaining an app with BLE support on Windows, Android, iOS, macOS is a real nightmare.
-
@sierdzio yep - not so easy with BT on different platforms. have done this for Android and iOS. then a customer asks to support W10 tablets. I'm not a windows developer and managed it to work on W10, too. on macOS I've seen that some devices are working and others not. (Using macOS only while developing not in production)
I'm also doing BT Classic for Scanners and Printers on Android.
Luckily Qt provides this, too. Just implementing all the pieces. will blog later on this.Take a look at Flutter: different plugins for BLE and BT Classic from different developers. I really prefer to get this directly from Qt.
(yep - would be great to get more from Qt for mobile, but a big thanks for all the work on BT) -
QML Code is much easier to read.
So it's the important point you think Qt (for mobile) has compared to Flutter. I agree with that it has a great impact on app maintenance. I hope Qt company will pay more attention to mobile apps so that it has more words to say in this "mobilized" world against the bigger company backing Flutter, Google! :|
probably also working on a book Qt6-for-mobile later this year)
so if starting new I would give Qt a tryThat sounds awesome. Looking forward to seeing things from you. :)
If the person downloads the newest version of Qt, will he/she be able to use Qt 6 and QML 3 on it now, please?
-
@tomy said in Qt Quick vs Flutter:
So it's the important point you think Qt (for mobile) has compared to Flutter. I agree with that it has a great impact on app maintenance. I hope Qt company will pay more attention to mobile apps so that it has more words to say in this "mobilized" world against the bigger company backing Flutter, Google! :|
since Google/Alphabet stands behind flutter, chances are high that it will die/be unspported/ dropped in 1 - 2 years time, like 80% else made by google.
I'm joking, googles history speaks for itself.
If the person downloads the newest version of Qt, will he/she be able to use Qt 6 and QML 3 on it now, please?
Not as far as I know, maybe you can get a preview/alpha version once 5.15 is officially out.