Does Qt need a modern C++ GUI API?
-
Per Temp's request "here...":/forums/viewthread/16321/P30/#82748
Asking whether QML is sufficient, or there needs to be a C++ alternative to QML's declarative language.
[Edited to add:]
Disclaimer: This poll is not necessarily in my personal interest. I was posting it on behalf of Temp (now apparently 'Deleted Member # 1de04' as of 4 May 2012), and I am not too concerned with the results one way or another.
-
[quote author="temp" date="1334844999"]I assume because you didn't trust me when I told you the ratio :) It must have sounded too improbable, unbelievable ;)[/quote]
Actually, not at all. I was curious to see the actual numbers, and if we're talking 50, 500 or 5000 votes. :P
-
Pardon me, I just have this idea that the trolls are very concrete in the view QML is all that is needed for GUI development, so it could come as a surprise if lots of developers disagree.
I actually asked mlong if it is possible to put the poll in a more visible place like the main page or something. This way it will bulk up faster and give a more definite view what percent of Qt developers are interested in a new and better C++ GUI API.
-
[quote author="temp" date="1334845740"] I actually asked mlong if it is possible to put the poll in a more visible place like the main page or something. This way it will bulk up faster and give a more definite view what percent of Qt developers are interested in a new and better C++ GUI API.[/quote]
Tricky. I'd rather not promote single threads, it will open a can of worms. And that is regardless of the topic. :P But of course, you're free to push it through your online channels, whichever they may be. :)
[quote author="mlong" date="1334848264"]In a perfect world, both options would be worded much more carefully (and neutrally.) It's very easy to slant a poll's results by the wording of the options. Some pollsters make a tidy living doing such.[/quote]
Writing survey (or interview) questions is an art. There are complete books on the topic.
-
[quote author="mlong" date="1334848264"]In a perfect world, both options would be worded much more carefully (and neutrally.) It's very easy to slant a poll's results by the wording of the options. Some pollsters make a tidy living doing such.[/quote]
I'll admit to giving directionality to the wording, but after all, QML is here to stay, it doesn't need justification, more important is to present its drawbacks, since those are a significant part of the reasons we need the option to skip all that not-really-necessary stuff. Also, the benefits of QML have been promoted at a large scale on DEV talks, the LABS and BLOG sections and what not, we all know the benefits but I never saw any blog post or tech talk focus on its drawbacks, so I did, for the sake of objectivity and restoring neutrality by providing the "other side of the story".
Also, in a perfect world Qt would have an awesome, hardware accelerated, fragment shader painting, openCL advanced blending C++ GUI, so this poll wouldn't even exist ;)
-
I voted "yes", but only because QML is not a golden bullet. But I'm also 100% sure that the Trolls know that.
And IMHO some people are just blowing stuff out of proportion when b..ing about Qt5 being too QMLcentric.
#1 C++ will always be a core language for Qt (I love C++ and can't imagine it being anyother way)
#2 Most of the time QML actually improves your software architecture by drawing more solid lines between the front-end and the back-end.
#3 It's not like C++ support has been dropped or anything. -
bq. Also, the benefits of QML have been promoted at a large scale on DEV talks, the LABS and BLOG sections and what not, we all know the benefits but I never saw any blog post or tech talk focus on its drawbacks.
Hmm, why not write such a blog post then, maybe with some benchmarks showing how terribly slow QML is, or how much glue code and proxy objects is needed compared to a hypothetical pure C++ API? I presume you have some experience backing up your claims?
-
I think that in a perfect world, C++ API and QML are equal. In addition, I would be happy if there is an easy tool for converting between the QML and C++ code. But the world is not perfect, so I say, "Yes, we need a native C++ GUI API". Maybe I even prefer it to be incompatible with the old one to make it faster and better, but without losing the existing features (AFAIK in Qt5 we lose some functionality of QMainWindow based on QWidget while having QWindow class).
-
If anyone believes that with C++ you can write modern GUI, so be it.
Wrong tool.
-
[quote author="minimoog77" date="1334961907"]If anyone believes that with C++ you can write modern GUI, so be it.
Wrong tool.[/quote] Nobody said that QML is not perfectly suited for it. Question is why Qt not follow the successful Apple native sdk policy. Or ... are Apple "iOS Graphics and Animation":https://developer.apple.com/technologies/ios/graphics-and-animation.html or "Mac OS X Graphics and Animation":https://developer.apple.com/technologies/mac/graphics-and-animation.html perfect native development kit ?
-
I voted with Yes. I do indeed like QML for creating neat UIs, but I think it's not the best approach to introduce a new design language for that task - or at least not in a C++ centered application framework. I would appreciate a possibility to access the advantages of QML from within a pure C++ framework without much coding overhead...
-
1: Since C++ cannot possibly be a viable replacement for a declarative language (like XML, HTML, JS/JSON et al), how is this "100% native" approach going to be solved - by publishing all private API's and possibly remove all the QML code?
2: Assuming this is what is called for, what is "modern" about making and emerging and unfinished C++ API public? Since this mistake has been repeated since the dawn of C/C++, wouldn't this rather make this proposal "old fashioned" and "unguided" instead?
Why not just use the private API's (or publish them at your own liking)? This is after all an open source project.
-
[quote author="minimoog77" date="1334961907"]If anyone believes that with C++ you can write modern GUI, so be it.
Wrong tool.[/quote]
What??? :):):)
Every serious software is written in C++, even the QML and JavaScript interpreter too.
A lot of (if not all...) high-level programming language compiler is written also in C++. The very new Win8 is written native C++ too. The Android and the iOS are written also C/C++.
An so on...