Linked by Thom Holwerda on Wed 20th Oct 2010 22:22 UTC, submitted by vivainio
Ubuntu, Kubuntu, Xubuntu This is kind of... Well, good news, I suppose? It depends on where you allegiances lie, but it seems like Ubuntu is warming up to the idea of using Qt to develop applications. It's no secret that Qt is a far more advanced development framework than Gtk+, so it only makes sense for Ubuntu - a GNOME/Gtk+ distribution - is looking at it.
Thread beginning with comment 446331
To view parent comment, click here.
To read all comments associated with this story, please click here.
tristan
Member since:
2006-02-01

Thanks, but perhaps I should have been clearer; my query wasn't so much "how can I learn about Qt", but rather *why* should I learn about Qt? What would it get me? Why is it better than the technologies that the Gnome world uses?

You can find a lot of things saying "Qt is superior" without any real details about what makes it superior.

Again, this isn't meant to be a troll or an invitation to a flamewar. Like I said, I know quite a bit about GTK development -- I do it for a living -- and I'm wondering what it is I'm "missing out on".

Reply Parent Score: 2

Timmmm Member since:
2006-07-25

The benefits I found (I started using GTK then switched to Qt), in order of significance.

* Signals/slots. They may be slightly hacky, but it is hidden well and they really are the easiest way to code UIs. Much better than callbacks (wxWidgets, GTK) or message passing (MFC).

* Documentation. The Qt documentation is one of the best of any project I've used. It's very comprehensive, and tells you exactly what you need to know. It's like the opposite of Android documentation.
It's comparable, but slightly better than the MySQL, or MSDN docs.

* It's real C++. It isn't a hacked up a "C++ in C's clothing" using endless macros and casts like GTK is.

* More comprehensive. It includes way more useful stuff than just low-level UI things. Particularly QtXML, QtWebKit, QGraphicsView, and the network stuff.

* Qt Creator (ok, this didn't exist when I started using Qt, but still). It rocks. A sample of the many awesome features: 1. It supports smart tabs! 2. Code-completion actually works *cough* KDevelop, Anjuta *cough*. 3. Ctrl-click anything to go to its definition. Very useful.

* Performance on Windows. It doesn't suck. And it looks native, unlike GTK.

There's simply no reason to use GTK over Qt today. The only real reason was the licence, but that is resolved.

Reply Parent Score: 9

nt_jerkface Member since:
2009-08-26

I would add a few:

Cleanly designed

Visual Studio tie-in

Bindings support

Better team leaders and funding

They still have some native control and font issues to work out in Win7 and OSX but once those are baked out you will see some ISVs switch over.

How much it is embraced in Linuxland doesn't even matter. There is nothing else on the horizon when it comes to cross-platform development.

Reply Parent Score: 3

segedunum Member since:
2005-07-06

...but rather *why* should I learn about Qt? What would it get me? Why is it better than the technologies that the Gnome world uses?

If you're looking at it from that point of view then you're going to find yourself in troll territory pretty quickly one way or the other.

Do you enjoy copying and pasting code from libegg, libsexy or anything else directly into your applications as you try and solve dependency hell? Hint, no one feels the need to do that with Qt. Would you like cross-platform applications to work? Do you enjoy using half a dozen different libraries in your applications besides GTK that all look and program differently? Do you really think that has ever been a good idea?

You can find a lot of things saying "Qt is superior" without any real details about what makes it superior.

If you can't glean some of the avantages from the above list then there's little that can be done for you.

Like I said, I know quite a bit about GTK development -- I do it for a living...

What kind of applications do you work on would be a good place to start. Anyone I have known who has ever done .Net, Cocoa, Qt or even MFC programming and has looked at GTK+ have said "If that's Linux development then no wonder it has no applications. I'm not going to write them".

You've probably been doing GTK programming for two long. Ask some Windows and Mac developers what they think because they're who the Linux desktop needs to grab.

Edited 2010-10-21 16:47 UTC

Reply Parent Score: 5

lemur2 Member since:
2007-02-17

Thanks, but perhaps I should have been clearer; my query wasn't so much "how can I learn about Qt", but rather *why* should I learn about Qt? What would it get me? Why is it better than the technologies that the Gnome world uses? You can find a lot of things saying "Qt is superior" without any real details about what makes it superior. Again, this isn't meant to be a troll or an invitation to a flamewar. Like I said, I know quite a bit about GTK development -- I do it for a living -- and I'm wondering what it is I'm "missing out on".


AFAIK, Qt Creator, the IDE, code editor, form designer and debugger, a true OO (primarily C++) paradigm, nice Python support, the clean abstraction layer isolation from the underlying OS that Qt provides, the extensive documentation provided for Qt, and the ability to easily support a wide set of target platforms ARE the main things that you are missing out on.

This site might be able to shed a little light on it for you:

http://www.wikivs.com/wiki/GTK_vs_Qt

It might be a little behind the very latest developments, but it seems to address your question reasonably well.

Reply Parent Score: 2