[Qt-interest] Are there any disadvantages with OT
Scott Aron Bloom
Scott.Bloom at sabgroup.com
Fri Feb 26 18:41:30 CET 2010
> Unlike Qt, MS has invested in making their language of choice, your
> choice.. Look Im not blaming TT/Nokia, I love Qt...
Simply put, .Net was Microsoft's response to Java after the courts told
them they couldn't Embrace & Extend Java; likewise, Silverlight is their
response to Flash, this time without the court battle.
In both cases they want to lock people on Windows, and their non-Windows
versions (e.g. Mono and the Mac version) are only supported enough to
make it seem like they are being cross-platform and trying to be
friendly with competitors.
They'll yank the plug as soon as they can, given a chance to do so.
-----------------
Not true.. C# is MS response to Java. .Net is the next gen frame work,
integrating languages and replacing the old MFC world of development.
C# is not .Net.. to us C++ guys it is, but Linq is a really great SQL
integration system, and hasnothing to do with thelanguage you are using
to develop it.
Silverlight is definitely a Flash esq, but if you are developing a SL
app, it will run just fine on Linux.. No you cant develop and deploy
from Linux, but frankly, you cant develop and deploy a iPhone app from
wndows or linux either..
-------------
> As has been said, in my view, Qt's biggest limitation is its lack of
web
> application/service/page deployment.
I've been using Qt for about a year now. And it's hard to find any real
disadvantages. It's one of the best platforms I've ever come across, and
makes cross-platform development a breeze.
That said:
- I do have to agree that pimpl is way over-used. It also tends to break
debuggers - including Visual Studios - and make it hard to debug even
under GDB. For example, QString values are not shown directly under
Visual Studios debugger - you have to go down several levels and search
for a little bit. (Yes, I'm using the VS Add-in.) In GDB, I had to write
my own user-defined functions, b/c otherwise you just get a the d
pointer value. So now that's one more thing I have to remember - can't
do p <qstring>, I have to use my p_qstring <qstring>. I haven't yet
written one for the QByteArray or QList, or any number of others - so
it's a little harder to get the data in debug mode without going back to
qDebug() or something similar in the program.
----
Agreed.. Just an FYI as to the debugger, get the Qt debugger plugins
from Nokia. It sets up the MS debugger to handle much of the pimpl
debugging issues for the container classes.
-----
- Some will complain that 'moc' is a disadvantage b/c its one more tool
you have to use. But it more than makes up for that fact once you start
using it.
-----
Agreeed, however, I find singals, slots and properties using moc A LOT
LOT cleaner then the boost signal/slots coding style. Frankly, Im afraid
that Cx01 will finally support meta object information, and use a boost
approach :(
------
- Some may complain about 'qmake' as well, but it's very much on par
with most build systems, and in some respects far exceeds them. CMake is
really the only fair comparison to Qmake b/c nothing else is quite as
flexible; though CMake can make use of Qmake too....so if you're really
comparing them, then you could just use CMake to start with. Probably my
only real complaint about qmake is the lack of documentation for doing
more advanced things; there's some documentation there but you really
need a book and a lot of examples to really be able to take advantage of
it; it seems to be mostly designed around listing headers and
implementation files, and choosing a predefined template. For example,
I'd really like to do some recursive projects - e.g. define a static
library, and in the using application just include a file into its Qmake
pro file. Sure there are ways, but it's not clearly documented on how to
do it.
---------
Agreed 100%. I always find myself grepping through the Qt distros
project files to try and figure out how to do something some "kinda"
advanced.
----------
Really, that's about it. I've done Windows programming for quite a
while, and have done Qt for about a year. In that time, I've done a
number of things in Qt in short order (1-3 days) that would have taken
months to do in MFC or Win32.
Ben
--------
+1. Tthough Ive been using Qt for 7 years, and have started doing more
and more C++/cli and C# in the last year, and honestly have been really
really impressed with it for web app deployment.
Scott
More information about the Qt-interest-old
mailing list