Linked by David Adams on Fri 6th Aug 2010 16:36 UTC, submitted by poundsmack
Qt Been wondering about Nokia's strategy for conquering the rapidly expanding app space? Great! So were we, which is why we joined up with a recent dev event carried out by the Finnish company for an update on how and where things are going. It's a familiar narrative by this point: Qt is all set to become the way that Nokia-friendly apps are made -- whether it be for Symbian smartphones or MeeGo-powered mobile computers, coffee machines or infotainment consoles
Thread beginning with comment 435656
To read all comments associated with this story, please click here.
Qt great, C++ not so much
by Zifre on Fri 6th Aug 2010 19:02 UTC
Zifre
Member since:
2009-10-04

Qt itself is awesome, but I hate using it purely because I hate C++. There is no reason that a systems language has to be so messed up as C++ is. Anyone else feel like its time for a new language that actually gets things right while retaining all the power and speed of C++? (It's certainly possible.)

On a side note, the word "infotainment" needs to die. And wait a second, it actually passes Chrome's spell check. Something is very wrong here. ;)

Reply Score: 2

RE: Qt great, C++ not so much
by bnolsen on Fri 6th Aug 2010 19:11 in reply to "Qt great, C++ not so much"
bnolsen Member since:
2006-01-06

C++ suffers from what made it so successful...its ability used as imperative, single rooted OO hierarchical or generic programming. The flexibility has allowed it to remain relevant through all these years but has made it difficult to work with properly (the difficulty is more about creating your own dialect based on what task you to want solve).

Unfortunately one of QT's problems is that it absolutely does select its own dialect for you and it carries a lot of baggage along with it. But there is no question here: of the frameworks out there QT is most cross platform and most complete.

It's sad for nokia that they didn't make this move before the first iphones came out. At this point they are trying to play catchup just because of timing.

Reply Parent Score: 5

vivainio Member since:
2008-12-26


Unfortunately one of QT's problems is that it absolutely does select its own dialect for you


That's considered a perk.

Of course Qt doesn't magically remove the rest of C++, but it provides an optimized, well-understood path that rewards those willing to stay on it.

Reply Parent Score: 5

RE: Qt great, C++ not so much
by vivainio on Fri 6th Aug 2010 19:52 in reply to "Qt great, C++ not so much"
vivainio Member since:
2008-12-26

Qt itself is awesome, but I hate using it purely because I hate C++. There is no reason that a systems language has to be so messed up as C++ is.


Do you hate the kind of C++ you use with Qt? Because it's pretty much the same as using Java.

People who think they hate C++ usually don't hate C++ the language, they hate the libraries they are forced to use. C++ can be as productive and "fluid" as any other language, when you have a good library. I get the same kick from writing C++ code with Qt as I get from churning out Python code (and that's saying a lot).


Anyone else feel like its time for a new language that actually gets things right while retaining all the power and speed of C++? (It's certainly possible.)


"Go" might evolve into one.

Reply Parent Score: 4

flanque Member since:
2005-12-15

I get the same kick from writing C++ code with Qt as I get from churning out Python code (and that's saying a lot).

Ever heard of something called Perl? ;-)

Reply Parent Score: 1

Zifre Member since:
2009-10-04

Do you hate the kind of C++ you use with Qt? Because it's pretty much the same as using Java.

C++ with Qt is certainly better than using C++ with any other library I know of, however it's not quite like Java. Obviously, there is some manual memory management involved (although that makes sense, given C++'s purpose). The biggest problem is just the inconsistent, complicated syntax. Also, the main feature I find myself wanting in C++ is something like algebraic data types. Boost.Variant gives some really bad error messages. I have written my own variant class using C++0x's variadic templates, which makes the error messages nice, and the compile times much faster, but it's not feature complete yet. I'll admit that I do love all the power that C++ gives you (there is no way I could write a variant type in any other language I know of, obviously not counting languages with it built in), but I don't see why a "powerful" language has to make so many mistakes.

"Go" might evolve into one.

I really hope not. Go is the only "modern" language I know of that has a syntax even worse than C++ (not counting esoteric languages, of course). Also, it's missing a lot of features such as generics/templates. D2 is the best option I know of, but it's not yet ready. Also, I am working on my own programming language in my spare time, mainly just for fun, that has all of the features I want. I doubt I will ever finish it though...

Reply Parent Score: 2

Richard Dale Member since:
2005-07-22

Qt itself is awesome, but I hate using it purely because I hate C++. There is no reason that a systems language has to be so messed up as C++ is. Anyone else feel like its time for a new language that actually gets things right while retaining all the power and speed of C++? (It's certainly possible.)

On a side note, the word "infotainment" needs to die. And wait a second, it actually passes Chrome's spell check. Something is very wrong here. ;)


I don't like C++ libraries much either when they are written in the template-tastic style of boost. But I find the Qt dialect of C++ to be quite nice to someone who doesn't like C++ all that much. It makes the language perfectly acceptable to me. I personally still prefer to develop Qt apps in QtRuby, and there are plenty of other good language bindings for Qt like PyQt, PerlQt, PySide, Qyoto(C#) and so on.

Reply Parent Score: 5

danieldk Member since:
2005-11-18

QtRuby is nice, however, OS X is badly supported. Try to compile a recent version ;) .

Reply Parent Score: 2

hibridmatthias Member since:
2007-04-11

I agree with Richard Dale!

I use QtRuby as well for all my stand-alone apps; as a result, along with QTDesigner, I don't need to know hardly anything about C++! And, my friends all use my apps no matter what OS they are running! SWETE!!!

Reply Parent Score: 2

RE: Qt great, C++ not so much
by Soulbender on Sat 7th Aug 2010 02:00 in reply to "Qt great, C++ not so much"
Soulbender Member since:
2005-08-18

I hate using it purely because I hate C++


So do I and that's why I use PyQT.

Reply Parent Score: 5

RE: Qt great, C++ not so much
by nt_jerkface on Sat 7th Aug 2010 04:55 in reply to "Qt great, C++ not so much"
nt_jerkface Member since:
2009-08-26

Qt itself is awesome, but I hate using it purely because I hate C++. There is no reason that a systems language has to be so messed up as C++ is.


To appreciate C++ all you have to do is see how much additional work it actually takes to develop a cross-platform Java application. Perhaps Java has improved but a lot of us were burned by the promise of 'write once run anywhere' that really was 'write once debug everywhere' so you can get a non-native looking application.

C++ can be needlessly finicky and lacks memory management. It can also feel like it has one foot firmly planted in the 70's. I prefer C# but would take C++ over python.

As for Qt it is the best cross-platform toolkit available, such a shame the open source world is still building around GTK.

Reply Parent Score: 3

siride Member since:
2006-01-02

Qt in C# would be awesome. Aside from a few minor annoyances, C# is what Java should have been and what C++ should have been heading towards and not away from. Just check out the C++ FQA for just some of the many reasons why C++ is broken by design (http://yosefk.com/c++fqa/).

Reply Parent Score: 2

gnufreex Member since:
2010-05-06

You obviously didn't use Java for a decade. Quit talking about things you don't know about. Java works as promised, try again.

Reply Parent Score: 2

Then check D
by jgfenix on Sat 7th Aug 2010 16:09 in reply to "Qt great, C++ not so much"
jgfenix Member since:
2006-05-25

It was designed for that. The version 2 of the spec is very interesting.

Reply Parent Score: 1

RE: Then check D
by Zifre on Mon 9th Aug 2010 00:16 in reply to "Then check D"
Zifre Member since:
2009-10-04

It was designed for that. The version 2 of the spec is very interesting.

D2 is great, but it's still not ready after several years. The compiler crashes even on some basic template tests. Also, DMD is not very portable and its backend is not quite as good as LDC, but LDC doesn't support D2 very well yet. Both projects don't look terribly active, so I'm not sure if we'll ever see a complete D2 compiler.

Reply Parent Score: 2