What to Expect From Qt 4
An anonymous reader writes "A presentation given by Matthias Ettrich (director of Qt development, author of LyX, and founder of the KDE project), was given to the annual KDE Developer's Conference in Nove Hardy, Czech Republic. In this presentation, Matthias details what's going to be new in Qt 4.0, which will be used as a base for the next version of KDE after 3.2. Apparently, Qt 4.0 will not only include faster startup times and lighter memory usage, but will have sweeping architectural changes, including a splitting of Qt's GUI classes and non-GUI classes."
but, is it absolutely essential? In a time where code needs to remain compatible due to the large amount of projects that are depending on that code, huge architectual changes implemented in a large number at one time will just show that the project wont get used for quite a while. It will take time for developers to start supporting the new format, which will leave end users wanting.
Password Authentication Bypassed for Root
I have alwways preffered Gnome to KDE because of speed issues (and the new Gnome is a lot prettier). But if this new base is much faster, then I may be forced to start using KDE again. Then again, my G5 should be arriving soon-- so forget Linux.
The New Root Council, kickin' ass sinc
Paragraph 2:
"Qt 4 mostly tries to preserve source-compatibility with a little search and replace and a COMPAT compilation switch. More porting will be required for styles and code that uses the meta object system directly."
How much stuff do you think uses the meta object system directly, aside from the internals of KDE?
Big deal. There is no law against having your stock owned by questionable companies. Furthermore, no publicly traded company can really control who buys their shares. They are publicly traded, any one can buy or sell the ownership.
It doesn't automatically mean Trolltech inherits all the vices of every one who owns shares.
I would not be worried or even morally concerned until Trolltech's business decisions go south. Minor share holders don't dominate a company. Even 5.7% isn't a lot.
Is more apps that require QT but not all of kde to run. That's why I use gtk apps... because most of them dont require gnome. There are gnome apps of course, and there are progs like Gaim that will give you a little somethin' extra if you have gnome installed, but you don't need it... Are there any qt apps that dont require kde to be installed?
Chaos is Divine *
A couple of years ago someone on the KDE team posted a nice analysis of the performance bottlenecks associated with dynamic linking, C++, and gcc, particularly as regards Qt use.
So I have to wonder, with Qt 4, KDE 3, gcc 3.3, how many of the performance problems remain?
"Provided by the management for your protection."
- Buy a Qt commercial developer license
- Release your own apps as open source
- Use a different toolkit
It sounds like you have chosen #3. I'm sure the people at Trolltech are able to sleep well regardless.taken! (by Davidleeroth) Thanks Bingo Foo!
I'd like to see more use of the standard library. The traditional complaints of poorly conforming compilers is mostly just history. Except for support of the export keyword, most C++ compilers and standard library implementations are now quite good. Most platforms even have several excellent compiler / library combinations to choose from.
Even though it would be hell for already existing apps, I would love to see use of standard library components rather than the re-invented QT versions. And even in those cases were the QT versions have extra features, I still think the advantages of using a library that is already familliar with most C++ programmers outweighs the disadvantages. Of course, that's just IMHO.
ec
First, the signal/slot mechanism really bugs me. I am annoyed with the need to use non-ANSI C++ techniques (e.g. public slots, moc) to achieve results that could easily be done with legal C++ code. While not strictly illegal, the use of the SIGNAL and SLOT macros, along with the Q_OBJECT macro, are not very good techniques. Specifically the reliance on macros to achieve basic GUI functionality violates a key principle in Meyers' "Effective C++", namely avoiding reliance on the preprocessor.
Second, several GUI widgets do not have a proper separation of data from view. I am thinking specifically of QTable and QListView. A better approach, from an OO design perspective, is the one taken in Java Swing. The JTable and JTree provide a nice mechanism for separating the data model from the GUI display. I find it obnoxious to have to subclass QTable and build-in data model methods to achieve results that would be cleaner under a Model-View design paradigm.
The QT online documentation is not easy to navigate. They should take a lesson from the Java API docs and reorganize the QT docs along those lines.
This is the exact problem Gnome has. They keep messing around under the hood and nothing changes from the user point of view, development is moving at turtle pace because developers who want to write gnome apps cant figure out what to use because some new bonobo/mono type thing comes out every 6 months.
Developers need stability if they are going to work on big projects, we need at least a few years before a big re-write. I cant develop for Gnome because everytime I try to start they change something.
If you use Linux, please help development of Autopac
I don't have any major complain from Qt, as I have been using it a lot in our company and found out that it is the best.
.NET libraries, providing almost everything needed under the sun.
I only have this problem: the TreeView widget is single-linked. This a major problem for us, since our apps contains lots of trees. We have to do a lot of tricks, like keeping a pointer to the last item all the time.
I've posted this on the Qt newsgroup but I was ignored. Although many people have complained about it, Qt engineers ignored us. I think they should fix it in version 4.
Other than that, Qt is indeed the finest toolkit out there. It simplifies development a lot, and it fills the great void that exists in C++ libraries. It's really like the Java libraries or the
The biggest advantage of it is that it works as expected; in other words, you just create one widget inside the other, and voila, there is the app's gui. You can even do it programmatically, without the KDesigner.
Finally, it does C++ justice. It's the only library that shows how powerful C++ can be. After having used Qt and Java, I may safely say its up on par with Java...even better I would say, since it uses all of C++ capabilities, including the most important one: templates.
I use and enjoy wxWindows, but I do not think your criticism of QT and their licensing is very fair. They have a completely free license (GPL) which you can use - to create completely free applications. They have commercial licensing (admittited too expensive for "shareware" type applications).
There is a completely reasonable middle ground where you can release your application as GPL code - which you can legally sell for any price you want - yes you need to provide the source code to your customers (not a bad thing) and yes they can then give it away to their friends, family and even people they pass on the street - but if your application has true value - they will probably be more than willing to pay for it (especially if it is as low cost as you claim). Many users are not sophisticated enough to compile their own binaries and the making the "official" binaries what you sell - is legal.
Now if you are just upset because they will not give you (or sell at the price you pick) their library for you to use in closed source for profit applications, then it is far better that you found a different library.
Home Automation & Linux -- now I know I'm a geek
Most of the applicatons you presented as GTK apps do not use GTK widgets:
Openoffice/Staroffice does not use GTK at all (in fact the first SO port to Linux was done by Matthias Kalle Dallheimer, a KDE founder...)
Mplayer has an optional GTK gui, which is hardly used by anyone. It also has at least two KDE guis. Not a very good GTK app.
XMMS has it's own GUI, GTK is basically used for the file dialog, which is arguably not the most impressive part of GTK.
Mozilla/Netscape uses XUL, it's own toolkit, again no GTK widgets are used, just some basic drawing routines.
This leaves GIMP (functional, but ugly) and GAIM (never used it, AOL is not my thing) for GTK.
Moritz
Is it too much to ask that the next Qt will use the standard C++ string class instead of its own reinvention and kitchen-sink-itis that it suffers from at the moment?
-- Ed Avis ed@membled.com
Ever tried stepping through code with a debugger that's full of macros? Not fun, unless you like printf's. As far as Troll Tech using macros for their signal/slots, I don't care as someone using their toolkit. One less abstraction to worry about.
"Tempers are wearing thin. Let's just hope some robot doesn't kill everybody." --Bender
Quote:
As an employee of a company in the same office buildings as SCO and partly funded by Canopy Group, I strongly encourage a boycott of all companies funded by the Canopy Group.
There was a lot of buzz about mergers a few weeks ago. It seemed that everyone was going to join into one large company called, you know it: SCO! .......
Help fight continental drift.
Sigh. I really hate to say this, but I must agree with keeping API's backwards compatible across versions of libraries.
I've been using Linux for years now, and one of the biggest annoyances is that software packages tend to be tied very closely to a specific version of a library. Without backwards compatibility, you sometimes need to have two or three different versions of the same library installed in order to use different applications.
When a library is used by a wide variety of applications, like Qt, GTK, libc, and so on, backwards compatibility should be ensured. Yes, this means the library may be a bit more bloated than it has to be, but the bloat isn't as bad as the bloat that results from having to install an ancient version of Qt in order to run an app that hasn't had active development for a few years.
This is coming from someone who doesn't do much software development; I just maintain a lot of systems and software libraries.
Writeups of the talks I went to are at:
the Nove Hrady wiki.
I don't know why you all are worried about QuickTime 4 f. I personally use QuickTime 6 on my iMac. Sheesh. You can't even see the latest pron and movie trailer's with Qt 4. Oh Wait... I think this is somthing else.. Damn you! you- 133t linux users fooled me again.
Two Towers-Two Worlds.One seeks triumphs and freedom for man.The other deems man unworthy and wrecks them.
Dipshit.
A 5.7% stake hardly makes TT a "Canopy puppet."
Hint: Look at Canopy's website. Note that TT is listed under "Portfolio Companies." Understand that this in no way means that they are controlled by Canopy group. Hell, Microsoft owned about as much of Apple after their $150 million investment. Did that make Apple a Microsoft puppet?
A deep unwavering belief is a sure sign you're missing something...
They *can't* do that. The Free Qt foundation (made up of two members of TT and two members of the KDE Project) ensures taht Qt will always remain free. If TT goes away, or decides to discontinue work of the Free edition of Qt, the latest version automatically becoms BSD licensed.
A deep unwavering belief is a sure sign you're missing something...