Linked by Eugenia Loli on Sun 5th Nov 2006 22:59 UTC
General Development David Chisnall takes a look behind the scenes at Apple's upcoming revamp of the Objective-C language. As with any new language, some things are good, some are ugly, and some are both.
Thread beginning with comment 179219
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[2]: Not dead yet?
by IndigoJo on Mon 6th Nov 2006 11:03 UTC in reply to "RE: Not dead yet?"
IndigoJo
Member since:
2005-07-06

Qt/Mac is actually a wrapper around Carbon, and unlike Cocoa and Carbon, you have to pay a four-figure sum (per developer) to build commercial applications with it.

In my own experience, there are two big problems with Qt as a platform for serious Mac applications. One is that Qt apps don't behave like normal Mac apps: for example, the menu bar is tied to the main window, and if you shut the window, the application dies. Cocoa and (normal) Carbon applications don't behave like that. It doesn't use all the Carbon widgets either, although this has improved in recent years (supporting drawers and sheets, for example).

Second, I've found that there are speed deficits. Widgets take about a second to "awaken" after you raise a Qt window on the Mac - they don't on normal Mac apps - and certain classes are sluggish, notably the text editor widget class when you write a few paragraphs with it.

Much as I love its API and I think it's fantastic on X11 and Windows, if you're looking mainly to develop Mac apps you should give Qt a miss.

Reply Parent Score: 1

RE[3]: Not dead yet?
by someone on Mon 6th Nov 2006 15:33 in reply to "RE[2]: Not dead yet?"
someone Member since:
2006-01-12

Much as I love its API and I think it's fantastic on X11 and Windows, if you're looking mainly to develop Mac apps you should give Qt a miss.

Qt is probably the best toolkit available if you want to do crossplatform programming in C++.

Your only other option is Java, which can look native when you use SWT or a proper look and feel like Quaqua. However, Java isn't suitable for tiny applications due to the overhead it introduces.

Edited 2006-11-06 15:37

Reply Parent Score: 1

RE[3]: Not dead yet?
by Brandybuck on Mon 6th Nov 2006 19:22 in reply to "RE[2]: Not dead yet?"
Brandybuck Member since:
2006-08-27

<em>...you have to pay a four-figure sum (per developer) to build commercial applications with it.</em>

s a professional Qt consultant, I can say from direct experience as a Qt consultant that this isn't an issue for professional developers. Shareware developers quibble about it, but they don't count. If you're making six figures for your software, a four figure price is peanuts.

And it's also available Open Source, so if you're only making three figures a year on your software, deduct your failed business attempt on your taxes and go Open Source yourself.

<em>One is that Qt apps don't behave like normal Mac apps...</em>

Most people can't tell the difference. In fact, many rabid Mac advocates can't tell the difference either unless they're specifically looking for it. What most people see as un-Mac-ness are merely Windows/Qt programs ported to Mac/Qt with no additional work. And it's certainly a heck of a lot closer in look and feel that Java/SWT!

Of course it's not perfect. Since it isn't pure Cocoa, it doesn't feel like pure Cocoa. But so what? Users don't care about little stuff like this. Over in the Windows world Microsoft can't even manage to get .NET apps to look like Windows apps, but no one cares.

Reply Parent Score: 3

RE[3]: Not dead yet?
by bigmarlin on Mon 6th Nov 2006 22:22 in reply to "RE[2]: Not dead yet?"
bigmarlin Member since:
2006-02-01

One is that Qt apps don't behave like normal Mac apps: for example, the menu bar is tied to the main window, and if you shut the window, the application dies.

Not true with Qt 4 - you can have a QMenuBar without a window.

Widgets take about a second to "awaken" after you raise a Qt window on the Mac - they don't on normal Mac apps - and certain classes are sluggish, notably the text editor widget class when you write a few paragraphs with it.

Have you used Qt 4.1 or later?

BTW: I wouldn't call Qt a "wrapper" as such around Carbon. Instead, it uses the "Carbon" / low-level system APIs to interface with the Mac OS. Cocoa, which is another high-level toolkit also has to use many of the same APIs underneath.

I too get frustrated when Qt widgets don't minic Cocoa properly, but they're definitely getting better! Speed is also no longer a concern either.

Reply Parent Score: 2