Yay, another Lib_One vs Lib_Two question. I love to answer them.
Requirements
Firstly, there is no perfect magic toolkit that suits everyone. Your choice should be based on what you are trying to do.
- Do you need a GUI Toolkit? Or do you want to create a complete application development infrastructure with an API for graphics, sound, IO images, etc.?
- Are you targeting a specific platform?
- Do you need extra eye candy?
- What does your client want?
- Do you focus on embedded systems or on a PC?
Gui toolkit
Both GTK + and Qt are significantly mature object-oriented GUI tools. They are open-source, cross-platform and have large active communities. GTK + is used as the standard toolkit for the GNOME, LXDE, and Xfce Desktop environments, while Qt is used for KDE. Both were used to develop professional applications and are time-tested.
Cross platform compatibility
Both tools support almost all major PC platforms.
Supported Platforms:
- Windows XP
- Windows Vista li>
- Windows 7
- Mac OS X
- Linux / Unix
In addition, Qt also supports:
- Symbian S60
- Windows CE
- WebOS
- Android
- Ubuntu Phone
Performance
This is seriously controversial. GTK + evangelists point to high Qt application memory usage, while Qt fans mock GTK's launch time. But overall there is not much difference. Both work fast enough on modern PCs.
Native Usage and Language Links
GTK + is licensed by LGPL, so it can be used for proprietary applications. Qt has a triple license for LGPL, GPL and a patented license. If you use LGPL or buy a proprietary license, you can use Qt for proprietary applications.
Both tools have bindings for all popular languages. Notable bindings include GTK #, C # Binding for GTK +, which was approved by Mono Project. And Qt-Jambi, a Qt binding for Java that is being actively updated.
Resources
Both toolkits are widely documented. GTK + has its own documentation (GTK-Doc) and Qt, which are documented by Nokia. However, Qt may have a slight advantage here because it has huge resources and the workforce of a huge corporation behind it (Nokia), while GTK + is only documented by its contributors. Many places on the Internet have tutorials on both of them. I prefer ZetCode .
Conclusion
As you can see, both of them are more or less good. The choice really depends on what I did before: what are your requirements?
ApprenticeHacker Feb 25 2018-12-12T00: 00Z
source share