6 ms·
As someone who is completely ignorant about QT, what are the arguments for using it? I looked at their product page and it seems incredibly expensive. Why pay t
by tenaciousDaniel 7y ago
As someone who is completely ignorant about QT, what are the arguments for using it? I looked at their product page and it seems incredibly expensive. Why pay to develop for a particular platform?
- dx87 7y agoIt simplifies developing cross-platform native apps. Imagine electron apps, except it uses less resources, and has a consistent look and feel with the rest of the OS. You also don't have to pay if you don't want, but Qt is licensed under the LGPL so you have to be aware of what you can and can't do under that license.
- amedvednikov 7y agoSpoiler alert: you can do anything with LGPL as long as you don't modify Qt.
- freedomben 7y agoAnd IIRC no static linking unless you make your source available.
- yjftsjthsd-h 7y agoIs that just actual static linking, or is bundling everything in a directory okay?
- shakna 7y agoBundling a directory is fine if you're still dynamically linking.
- freedomben 7y agoCorrect. As long a linking is dynamic, Qt doesn't care how/where the Qt libs are distributed. They typically recommend bundling for Windows and using system packages for Linux.
- jcelerier 7y agoNo, you only have to make your proprietary compiled object files available. what lgpl requires is for the user to be able to update the LGPL parts - so Qt in this case and this does not need your code. Source: https://www.gnu.org/licenses/gpl-faq.en.html#LGPLStaticVsDynamic https://www.gnu.org/licenses/gpl-faq.en.html#LGPLStaticVsDyn...
- ken 7y agoEvery Qt application I've ever used has been ... off. Granted, it's closer than Swing. That's a pretty low bar. We need to either start qualifying this ("it's a good GUI toolkit for a cross-platform one"), or accepting that this is a scale (10 is "actually native", 0 is "just looks like Motif everywhere"). I'd give Qt 8/10 -- it's pretty good, and the screenshots look great but after a moment using it I'll say "wait, I think I know why everything feels just a little bit off".
- WaxProlix 7y agoAs a counter to that, you've only got one set of data points, the ones you noticed. Potentially there are dozens or hundreds of well-made Qt apps that you haven't noticed, and so they by definition wouldn't be a part of your dataset.
- jcelerier 7y ago> Every Qt application I've ever used has been ... off. even Microsoft OneDrive ? even battle.net ? even your AMD drivers ? even Telegram ?
- wwright 7y agoThose programs definitely do not use the same UI conventions as the rest of the platform.
- Data_Junkie 7y agoYeah but if you use Qml you can do whatever you want. That's the magic.
- kbumsik 7y agoIt's LGPL, you don't need to pay. Also... > Why pay to develop for a particular platform? Because Qt is not a particular platform but one of few cross-platform GUI framework.
- wwright 7y agoI would definitely call Qt a platform, just like Java is a platform (it actually has a lot of similarities to Java). The platform happens to run on multiple other, lower-level platforms.
- Data_Junkie 7y agoI would definitely call Qt a toolkit, because, you know, honesty. Java is a language you know.
- shakna 7y ago> Why pay to develop for a particular platform? Qt runs on Windows, Linux, macOS, iOS, Android, WinRT, VxWorks, QNX and others. [0] You don't get one platform, you get just about all of them. [0] https://doc.qt.io/qt-5/supported-platforms.html https://doc.qt.io/qt-5/supported-platforms.html
- wwright 7y agoI tried porting some Qt code to iOS and Android a couple of years ago — I found the experience to be extremely lacking. I’m not a fan of Qt or C++, but I will admit it is at least a very pragmatic and efficient choice for Linux GUIs. It’s much less than that on mobile.
- llornkcor 7y agoand now the web too!
- unlinked_dll 7y agoIt's expensive because it doesn't really have any competition. Your car's infotainment center was probably written using Qt. Electron is eating a bit of their lunch but it lacks a few features yet, uses a lot of resources comparatively, and doesn't support the same targets or developer communities that Qt does.
- Nokinside 7y agoIf you want to develop to responsive cross-platform application, it's the best choice. It's basically industry standard in embedded platforms at this point. It's not expensive is you have a business that makes any money. It's free if you don't modify qt source itself and follow LGPL.