A Taste of Qt 4 365
Karma Sucks writes "In 'A Taste of Qt 4', Trolltech reveals that it is positioning Qt 4 directly against Java. Qt 4 promises to be smaller and faster than its predecessors and there will be a boatload of new features including support for non-GUI applications and accessibility under Linux using Sun's ATK. More controversial is the introduction of a new and elegant foreach construct. Incidentally, for those still opposed to Qt's moc preprocessor, Havoc has some interesting comments. It is possible the idea will be adapted to provide GObject introspection in the future."
Mono-Culture? (Score:5, Interesting)
And what about Mono?
Re:Mono-Culture? (Score:4, Insightful)
It's not a Monopoly... I don't think Gnome is gonna embrace Qt (at least now). So Mono has its place.
Re:Mono-Culture? (Score:4, Insightful)
I'm getting tired of all those predictions, promises and vaporware coming from Gnome/Mono. Why does anybody still take them seriously?
So far, nothing useful has come from Mono while Qt runs REAL software (you know, the kind that actually runs and can be useful) ranging from a whole desktop environment to word-processors.
Re:Mono-Culture? (Score:3, Insightful)
Re:Mono-Culture? (Score:3, Interesting)
The point is just that Mono is not a toy. Of course, it's not silver bullet either, but compared to C, it sure allows the developer to focus on the important logic of his applications instead of juggling with memory pointers.
Re:Mono-Culture? (Score:4, Informative)
Given that Mono runs C#... just survey the landscape of
Eclipse (one of the most popular [Java] developement environments) for one has been compiled to CLR bytecode and run on Mono. There is also an ASP engine written on Mono. Go check out the Mono site to see who use it. There are several companies that use it as a production environment.
Re:Mono-Culture? (Score:2)
It must've come from C#/Mono since we all know that something is only innovated after Microsoft copi^H^H^H^Hinvents it, right?
Re:Directly against Java? (Score:4, Insightful)
The difference is that Java is a true platform while QT is at the moment foremost a widget toolkit with a bunch of latecoming useful libraries bolted on. Not to knock it - I think one of the massive holes in the C++ "platform" (if you are going to act like it is one) is that it has had no standard set of libraries. The mantra is "write your own" or "use XYZ because that's most popular". That, a platform, does not make.
Seriously I think it's about time C++ got a platform, but to call some syntactic sugar plus some libraries a platform (or at least a platform even beginning to compare to Java in platform-ness) is silly.
And by the way, C++ is "enterprise ready" in the same way straight razors are "oral hygeine ready". Sure you can do it, but expect pain, bleeding, and embarrassment. These is not only my argument - survey the enterprise landscape... the only people using something like C++ for large web applications or middleware are either those that have 1) massive legacy investment 2) massive earth crushing load and performance requirements (e.g. ebay, amazon, etc.). Lastly just because you CAN do it, doesn't mean that it is necessarily a good idea. The market shows that C++ is very expensive to write and deploy (if you are going to go by salaries, etc.) for jobs which can be done equivalently in some other language.
Almost every body else is using some other-generation language, be it Java,
About KDE... (Score:5, Interesting)
Re:About KDE... (Score:5, Informative)
Qt4 alone should cut down the start-up time of apps significantly. It's effect in the run-time are propably less dramatic, but the KDE-folks can make a difference there (and they are making a difference). And Qt4 should eat considerably less RAM. I see good things ahead
Trolltech (Score:5, Funny)
Psh... (Score:4, Funny)
Re:Psh... (Score:2, Interesting)
Wait a minute ... (Score:5, Funny)
Nevermind, it makes sense now.
Re:Wait a minute ... (Score:2)
Java? (Score:5, Insightful)
That'll be great to be writing servlets and jsp's in C++. *cough*
Re:Java? (Score:5, Interesting)
qt vs java ? WTF ?
this is like comparing a ford vs. titanic.
java is much more than some simple thread/socket apis
and visual components.
java has technologies from j2me to j2ee including
huge transactioning clusters which work with thousands
of clients. show me an qt based application server like jboss.
there are none.
so how could you POSSIBLY compare these things ?
java runs anywhere from sun to x86, you don't have to
compile anything if you switch the platform.
with qt you have to. that's the trouble most users don't want to take.
java can work in a cluster where machines are ranged
x86's to ultrasparcs and Apple's G4's. Qt isn't able
to do it. so
it's hard to write a memory leaking application in java
(i know it can be done, i have seen some "java programmers"
who are experts on it, but usually it doesn't happen),
every forgotten free() or a typo in a c/c++ program can
cause you memory leaks.
it's very hard to get a segmentation fault in java, in the
opposite of that you get a catchable exception which
you can handle as you like, as in c i belive everyone
reading this forum has opened the bloody gdb and looked
"where the f do i go wrong here... ?".
gush. who ever wrote the article should be ashamed a bit.
there is absolutely no point in the whole thing whatsoever.
you may define one define that qt the standard of c++ as
j2sdk is for java, but you couldn't obviously compare a c++
library to the whole java business.
Re:Java? (Score:2, Insightful)
qt vs java ? WTF ? this is like comparing a ford vs. titanic. java is much more than some simple thread/socket apis and visual components.
When they say Qt vs Java, they mean API vs API. There is no other meaning, since Java is also a platform, whereas Qt is a toolkit.
Java is mainly a toolkit, and you also get an environment to run the toolkit inside. This is not a bad thing, but it does not provoke economy. C++ based apps are compiled once, Java apps are compiled every time they run.
To prove to you
Re:Java? (Score:4, Insightful)
Yes it does , you can use the full C API in C++ and for simple things it used to be quicker though I don't think thats the case any longer.
"If you use C++ properly, you shall not have memory leaks"
You could say the same about C or even assembler. If an object is new'd in a function but the coder forgets to delete it thats a memory leak,
exactly the same as doing a malloc but forgetting the free.
"Maybe you should be ashamed, because you have no idea of C++ programming."
I'm not convinced you have a full handle on it either. I get the feeling you learnt C++ and never learnt straight C which you may think is an advantage
but I can assure you it isn't.
Re:Java? (Score:3, Insightful)
While I agree that C++ can be as dangerous as Assembler, use of proper libraries/STL does improve the situation.
Re:Java? (Score:3, Insightful)
I'm not sure in your 14 years you've really done much to-the-metal coding
On the contrary, a great deal of my experience has been on the metal, using tiny, proprietary OSes, commercial RTOSes, or even no OS at all... and nearly all of it done with C++. A couple of times I had to implement the necessary C++ run-time support myself, but it was well worth the effort.
I can write C code, but I find it tedious, error-prone and constraining. The only time I'd choose to restrict myself to C is in the context
Re:Java? (Score:3, Insightful)
a wrapper in qt or can you ?
let's say you wan't to use ncurses api, are you
really going to implement it (or at least a frontend)
in qt ?
basically if you need to use libraries that
qt doesn't contain you have to worry about memory
usage.
anyway, this is not the global point.
qt is FAR away from where java is now.
it isn't even meant to be a java replacement, but as an C++ alternative to it.
still i can't imagine why should i switch from java
to c++ when develo
Re:Java? (Score:4, Interesting)
It's about graphical toolkits used in cell phones.
Re:Java? (Score:2, Interesting)
A friend of mine has some work in this area... Server-side programming in C++...T++ [sourceforge.net] are not very useble yet, but proof it could be done.
Qt is almost a like a language (Score:5, Informative)
What people don't realize is that Qt is actually a massive foundational library, similar in nature to Java's, for C++. It is a very large API, with threading, network, XML, objects, container classes, string handling, unicode, etc. The 'moc' tool even brings extra features to C++ that normally don't exist. It's almost as if Qt/C++ is a language of its own. GUI is a very small portion of Qt. In fact, of all the Qt code I've ever written, most of it has nothing to do with the GUI. Qt makes C++ actually fun.
I'm very much looking forward to Qt 4. With the plans for advanced threading support and GUI/non-GUI split (similar to how glib and gtk are separated), I can see Qt being very useful for writing cross-platform server applications, a market mostly ruled by Java. The great thing about Qt is that it gives us natively compiled code.
Re:Qt is almost a like a language (Score:5, Informative)
Yes, a lot like wxWidgets. [wxwidgets.org]
Re:Qt is almost a like a language (Score:5, Interesting)
Yeah, BUT.... (Score:4, Insightful)
1) No GPL version for the Windows platform. As much as people in the Open Source community might hate MS, many (most) Open Source packages are cross-platform where Windows is a platform.
2) A non GPL version of the library costs an outrageous sum of money. Sure Trolltech wants to make money, but lower the costs a bit.
3) Why compete against Java? Somebody who uses Java is not going to switch to Qt as Java is still simpler. To me C++ != Java, and I am not saying one is better or worse than the other.
Frankly, I tend to prefer wxWindows, which has many of facilities mentioned in the parent post. And there are plenty of bindings for wxWindows (Python, Java,
the first one makes it difficult (Score:2)
Re:the first one makes it difficult (Score:4, Insightful)
I should mention that the Psi project [affinix.com] receives Qt/Windows for free. Trolltech gave us several commercial licenses, including endless support and upgrades, provided that we only use it for open source work. I'm not sure how practical it is for all free cross-platform projects to establish a trusting relationship with Trolltech in order to use Qt/Windows, but it might be a solution...
Re:the first one makes it difficult (Score:2)
If a developer got a Qt/Win commercial license, can he/shethen compile an open source program and distribute the binary? I checked the license agreement for Qt/Win and didn't find anything about that...
Re:the first one makes it difficult (Score:2)
Yes, this is allowed. Back when Qt/Mac was still non-free, I found a commercial user on the qt-interest mailinglist to maintain my Mac port. Just ensure that the person doing the compiling has the necessary rights to do so. For GPL projects, this generally means amending the license to allow linking to t
Re:the first one makes it difficult (Score:2)
Re:Yeah, BUT.... (Score:5, Insightful)
A port of the GPL'd Qt/X11 to Windows can be found here [sourceforge.net]. Remember, there was a time when Gtk didn't run anywhere but X11 either, yet hobbyists managed to port it. Qt is arguably much easier to port, as it was designed this way, and Trolltech has already proven it with their own proprietary version.
2) A non GPL version of the library costs an outrageous sum of money. Sure Trolltech wants to make money, but lower the costs a bit.
Honestly, I'm not sure how Trolltech can afford to pay all of their programmers a decent wage by simply selling a developer tool (which by definition is a bit of a niche market), even at such a high price. They must sell a heap of licenses... I'm no business major, but I think that Qt has to be expensive if we want Trolltech in business (and we do, Linux on the desktop wouldn't be where it is today without 'em).
3) Why compete against Java? Somebody who uses Java is not going to switch to Qt as Java is still simpler. To me C++ != Java, and I am not saying one is better or worse than the other.
Ahh, but maybe Qt can keep a C++ user from switching to Java? I learned Qt before I learned Java, and during my study of the latter I kept thinking how much it was like Qt. At this stage, if something cool is possible in Java, I'd like to see it also possible in Qt/C++ (assuming such a feature would make sense in that context).
Re:Yeah, BUT.... (Score:2)
Thanks for the link. I had no idea such a port was so far along. As a former Qt licensee (my workplace bought the license, but can't justify the cost of continuing to do so) who writes only in-house software, this is incredibly good news.
Re:Yeah, BUT.... (Score:2)
Re:Yeah, BUT.... (Score:4, Interesting)
I wrote Java GUI applications for a few years before having been exposed to C++ (much less Qt). I learned C++ solely so I could use GTK--.
A year later, I found Qt and found myself using it more than I used Java (I had since become disillusioned with GTK--).
Today, I only write Java code if I would otherwise be stuck writing VB. In all other cases, I write C++ with Qt.
Trolling? (Score:5, Insightful)
2) A non GPL version of the library costs an outrageous sum of money.
If you think only 1500-3000 [trolltech.com] ( depending on package ) per developer for a perpetual license is a large amount of money, then you're either 12 years old or have never paid a dime for software in your life.
A manager of any team of 5 or more people would laugh at that kind of money. It is chump change compared to how much a company would spend on *paper* for pete's sake.
And if you take into account the developer's time ( which any manager must ), Qt is actually cheaper since it is so powerfull it takes on average 25-50% less code to do things in Qt than it does to do in other C++ toolkits I have used in the past.
I would use Qt even if I was only targeting Windows and even if I was the only person on the team. It is *that* good. People who knock it just do not have experience using it.
Re:Trolling? (Score:3, Funny)
Not if you do the math (Score:3, Insightful)
8,400 / 120 = 70
4 Developers * 30 / hour = $120 / hour
Even if using QT only saved you 10% of developer time ( and from my experience it saves you more like 25%-50% ), it would pay for itself after only one and a half weeks. After one and a half weeks you are making pure profit.
Re:Qt is almost a like a language (Score:4, Interesting)
I read a comment in Doctor Dobbs' Journal more than a year ago to the effect that Qt doesn't teach good C++ practices because most, but not all, objects are managed by the toolkit, in such a way that they must be allocated but never released. People do lots of new() but never any delete().
Is that true?
Re:Qt is almost a like a language (Score:5, Informative)
This means that one doesn't have to delete all widgets which are added to a parent widgets by hand, but that it happens through the ownership-tree when deleteing the parent widget.
I don't feel qualified to play judge between DDJ and Trolltech on wether that is good or bad C++ practice.
Re:Qt is almost a like a language (Score:5, Interesting)
Perhaps using a garbage collector is bad practice, too. We should probably therefore stay away from any project like Boehm GC that provides garbage collection in C and C++.
Or maybe automatic ways of managing object destruction are useful tools that make programming easier... I wonder which?
Re:Qt is almost a like a language (Score:3, Informative)
Like all language features, whether Qt's automatic object deletion is good or bad depends entirely on the programmer taking advantage of the feature (or failing to take advantage of it).
I think it's a great feature. It proves its usefulness each time I create a non-trivial user interface.
I use QPtrList (the class which does the behind-the-scenes auto-deletion) extensively in my non-GUI classes jus
Re:Qt is almost a like a language (Score:3, Insightful)
The same argument could of course equally poorly be made against smart pointers. Why use a smart pointer when you could do manual memory management with new and delete? Oh, what heresy!
PS. new and delete are operators, not functions. There is no such thing as new() and delete().
Re:Qt is almost a like a language (Score:2)
From memory the author advocates a syntax that makes it clear that the pointer is managed (à la smart pointer) or to provide a method that clearly deletes something (as in widget.deleteAllChildren() maybe?).
And
Re:Qt is almost a like a language (Score:2)
And yes new() and delete() do exist, sorry.
I stand by my claim: new() and delete() don't exist in standard C++.
Yes, of course new and delete can be overloaded, just like other OPERATORS. And yes, overloading happens to be done with methods having a special signature, in the case of new the method name happens to be "operatornew". Because the "operator" word is reserved in C++, you often see the new operator overloaded as
void* operator new(std::size_t) throw (std::bad_alloc);
to improve readabi
Re:Qt is almost a like a language (Score:5, Informative)
Re:Qt is almost a like a language (Score:4, Insightful)
This of course also means total unportability.
Shrug.
Once a body of application code is married to a GUI toolkit or class library, it's pretty tough to port it to anything else (different toolkit or classlib) anyway. A few extra keywords like slots, signals and the new foreach don't make that much difference, they're just syntactic sugar (but oh so sweet) for stuff that can be implemented in other ways.
Re:Qt is almost a like a language (Score:3, Insightful)
- moc is not a preprocessor (funny that this slashdot story says so right next to the link where Havoc says it's not)
- moc fills in features that are not already in the language; how exactly does gtkmm do dynamic introspection (properties, finding out which signals/slots are available at runtime, etc.) in the "right way" ?
- just like most of the Qt bashers, you're a moron talking about something you have no clue about
Re:Qt is almost a like a language (Score:2)
>> moc is not a preprocessor
> moc is a preprocessor
What about 'moc is a metadata extractor implemented as a preprocessor'.
Everybody is happy this way
If We Use a Simple Syllogism... (Score:5, Funny)
b. VB has a foreach construct.
c. Therefore, VB is elegant ?
Re:If We Use a Simple Syllogism... (Score:5, Funny)
a. More controversial is the introduction of a new and elegant foreach construct.
b. VB has a foreach construct.
c. Therefore, VB is elegant ?
Yeah, and using the same type of logic:
a. Human beings have hair
b. Cats have hair
c. Therefore, cats are human beings.
See, I knew it! Your cat owns you, and not the other way round! (or is that only the case in Soviet Russia?)
Qt interface to Parrot? (Score:5, Interesting)
Just think.
Java has Swing / Eclipse and the old one whose name I can't remember but I did use it a lot but its 7:30am and the coffee hasn't hit me yet.
A Parrot/Qt set would give Perl, Python, Ruby etc a nice graphics toolkit targettable against multiple platforms. Yes I know about Tk/Tcl and WxWindows.
Uurgh. Must get coffee. And train
regards, treefrog
Re:Qt interface to Parrot? (Score:2)
I'm just saying you left it out, not trying to start the holy war. In keeping with that goal, I'll offend both sides in one of the other well known battles and openly tell the world... I prefer nano
Re:Qt interface to Parrot? (Score:2)
Re:Qt interface to Parrot? (Score:2)
New and Elegant "foreach" ? (Score:5, Insightful)
Seriously, such rejoicing about new language features fills me with pity at the thought of those poor programmers stuck with whatever language constructs the "higher autorities" deems them worthy to have.
Lisp has supported extending the language for about 40 years. And people still get excited when they get a new syntactic construct for C++. That is sad.
If you want to find joy and productivity in programming, use Scheme, Common Lisp or some other programmable programming language. Free your mind.
Re:New and Elegant "foreach" ? (Score:2, Funny)
Re:New and Elegant "foreach" ? (Score:4, Insightful)
I would, but runtime type errors keep me up at night.
. . . or some other programmable programming language.
I'm still looking for one with static types.
OT: Re:New and Elegant "foreach" ? (Score:3, Informative)
How about this one [inria.fr]? (For the "programmable" bit, see here [inria.fr].)
Here's Qt's new 'foreach' construct:
Here's the equivalent code in Lisp:
And here it is in OCaml:
Nope (Score:2)
(for-each process list)
and in CL
(mapc process list)
In CL you may want to use the function cell:
(mapc #'process list)
It depends on what type of process it is.
Re:New and Elegant "foreach" ? (Score:2)
Since the distinction between built-in and non-built-in functions does not exist, 'extension' of the language is trivial. (I use 'extension' a bit liberally here.)
foreach (Score:5, Insightful)
std::for_each (Score:2, Interesting)
Re:std::for_each (Score:4, Insightful)
Re:std::for_each (Score:2, Interesting)
std::for_each(v.begin(), v.end(), std::cout << _1);
Re:foreach (Score:2)
Do we REALLY need more things fighting Java? (Score:4, Insightful)
Until the marketplace is more open, with no gigantic 95+% monopolies in any given field, I'd like to see the non-Microsoft players cooperate in an effort to cut MS down to size. Then, and only then, should they focus on competing amongst themselves!
Yeah, right positioning against Java... (Score:2, Insightful)
Re:Yeah, right positioning against Java... (Score:2)
(Just don't imitate so much that it lands you in jail)
Win32, Win32, and Win32 again (Score:4, Interesting)
So Qt 4 is "positioned directly against Java". Fantastic! Except I read just a few days ago (also here on slashdot) that Qt will keep on blockading the release of a free-of-charge and publicly available version of their Win32 library port.
Now, call me cynical, but how in the hell are you gonna compete with Java, whose foremost strength is the (alleged) platform independency if you kill yourself right away for the most commonly used platform?
As pointed out by many readers already, Mac OS X is not free or Open Source, and does not have a statistically proven larger base of FOSS developers. So offering free Qt library for OS X while categorically denying Win32 is nothing but complete BS. And this new PR crap about "positioning against Java" is simply too laughable seen in this light.
Btw, I prefer KDE over Gnome, so I'm not an "enemy" of Qt per se.
Re:Win32, Win32, and Win32 again (Score:4, Insightful)
Now, call me cynical, but how in the hell are you gonna compete with Java, whose foremost strength is the (alleged) platform independency if you kill yourself right away for the most commonly used platform?
What does platform independency have to do with openness ? if you pay Trolltech, you get the Win32 sources. Qt is open (as in speech)
Why does everything have to be free (as in beer) ? if you made good software, woudn't you want to get something in return ?
Sun has a specific reason that Java is free (as in beer): market penetration. On the other hand, Trolltech is just a small company, very small compared to Sun. They can't afford to give away for free their flagship (and only) product.
Re:Win32, Win32, and Win32 again (Score:2)
I agree, but pragmatically speaking, Trolltech would probably go out of buisness if Qt for Windows was freed.
I'd like to see that NOT happen.
Consumer-style user interfaces - ugh (Score:2, Insightful)
Driven by consumer electronic devices such as mobile phones and PDAs, desktop applications are moving away from standard widgets and styles towards more customized user interfaces. Qt 4 will support this modern user interface approach through its powerful style system as well as with flicker-free refreshes and transparency for all built-in and custom widgets.
I find this trend distressing. Custom user interfaces are, in general, a bad idea. Using non-standard widgets impacts negatively upon application u
foreach, like this? (Score:2, Informative)
Qt vs Java? on Server-Side? Try Cocoa WebObjects (Score:4, Interesting)
For most people who were in the pre-DotCom Boom you will recall that WebObjects via Objective-C really paved the way for Web Server-Side Development.
The decision to switch it to J2EE was political and at the time, necessary, in order to compete with all the hype.
Remember however, that this "CODE" wasn't washed down the drain. WebObjects leveraged Foundation and AppKit directly. The beauty of Cocoa is that augmenting WebObjects back to Cocoa/Objective-C is extremely trival for Apple.
I would be highly surprised if Steve doesn't decide to throw out the trump with Portable Distributed Objects (PDO) for say OS X version 11 and have it seemlessly work with .NET and J2EE.
What a lot of people who also worked once at NeXT know is that lots of the technologies that were never released are slowly being reincarnated into various pieces of the pie.
Against Java ? (Score:5, Insightful)
Which bit ?
Against the J2EE platform supported by IBM, SAP, PeopleSoft, Oracle, BEA, Sun, Manugistics etc etc
Against J2SE supported by IBM, Sun, Dell, HP etc
Against J2ME supported by IBM, Nokia, Ericsson, Sony, Sun etc
How about positioning it as a useful tool for corporate developers with minimal tooling support and no easy integration with corporate applications.
OSS needs to realise what WORKS in a corporate environment and why it does, and why re-inventing, or competing with, the wheel is not a great idea.
I like OSS, I advocate OSS with my clients, but its this sort of visionless statement that makes many serious IT directors walk away as they know its a bollocks statement made by people without a grasp of their problems.
Corporate IT _is_ IT.
NAtive Toolkit? (Score:2, Interesting)
I thought that honor belonged solely to Motif...
Re:NAtive Toolkit? (Score:4, Funny)
On Linux, Qt is in the unique position of being seen as one of the native APIs.
Qt vs Java/Swing (Score:5, Interesting)
"Qt is positioned as superior alternative to Java".
Trolltech cannot possibly mean that. What they meant to say is: "Qt is an alternative to Java when it comes to cross platform client applications using a GUI". While Qt may do some non-GUI things, too, it's totally different from Java (clue: Qt is not a programming language) and from the Java platform (it doesn't come with a VM, it doesn't have its own bytecode, etc...). What remains is that it's an alternative to Java if you want to deploy applications across Windows, Mac, and Linux. Giving Trolltech the benefit of doubt, this is what they meant.
Having done client-side programming for many years, i can see that there is something to that. I once hoped that Qt would develop into a viable alternative because AWT/Swing was so slow.
However, since then Sun has done their homework and made Swing fast (indistinguishable from native, for the most part), and they are continuing to work on performance in release 1.5. There is still a lot of room for improvement. Things like Apple's library caching - where they pre-compile the native libraries and cache the machine code on the hard disk which makes a Java apps start as fast as a native apps, more hardware acceleration for Swing etc.
Once we get performance out of the way (i have not seen Qt, but i assume it's fast), there is nothing Qt could offer that Java didn't do better.
For example, you don't have to deal with c++. Java is not perfect, but it's - yes we can say that in public - definitely more productive than c++, in the same way that c++ is more productive than asm machine code.
Add to that extensive networking libraries, array bounds checking (buffer overflow exploits not possible in java, imagine that), garbage collection, serious instead of optional OO, and the list could go on and on, no recompiling, runs on more platforms than Qt, free deploy license...
Re:Qt vs Java/Swing (Score:4, Informative)
I've been programming in Java and C++ for years, and in Java for years before learning C++. My productivity with Qt/C++ equals (and in most cases, exceeds) my productivity with Java.
While Swing on the Mac may have dramatically improved its performance (I'll have to take your word for it), Swing on Linux and Windows are still (as of JDK 1.4x) horrendously slow to start and horrendously slow to run.
Qt outperforms Java/Swing by a huge margin on those platforms.
Extended multithreading support is interesting (Score:4, Interesting)
But how will they make shared data thread-safe implicitly!? Usually, for MPC, data is just copied. But if different threads share pointers, the access must be synchronized. Will QObjects become Monitors, like Java's Objects?
Re:False pretenses (Score:2, Insightful)
Java works very well on server side. It doesn't work very well client side. Its horses for courses.
Re:So (Score:5, Insightful)
While you may not realise the benefits straight away, software being easier to develop means more, higher quality apps for everybody.
Re:So (Score:3, Insightful)
Happy Developers == Happy Users (Score:5, Insightful)
This should be obvious.
If the new Qt toolkit gives developers things to drool over, they'll develop more software. If they develop more software using droolworthy tools, there's a good chance some of that software will be droolworthy in and of itself.
A good API isn't the be-all and end-all of software design. But giving developers things to feel excited over is important, especially in the open-source world.
Re:So (Score:3, Insightful)
It's a C++ development toolkit - the users of this software are by definition developers.
Also, the article is posted in the "Developers" section of slashdot, it was never intended to interest you. If it bothers you so much, turn off the Developers section in your preferences.
Re: So (Score:2)
I disagree, and I think it's pretty bad fanboyism that the original poster was marked "Offtopic".
A widget toolkit is used by both developers and end users.
Think about it. A developer uses the APIs, so we want them to be nice, but the user uses the widgets, so we want them to be nice too. Fully featured widgets that are designed to look good and be easy to use are just as important as nice looking APIs - in fact,
Re:So (Score:3, Interesting)
As a KDE user you can look forward to a (most likely) KDE 4.0 release that'll start faster and run faster, have smaller memory requirements, look better and have better accesibillity.
And you say there's nothing to be excited about as a KDE user?
So when will KDE 4.0 be released? I have no idea (and I'm not a KDE developer so I have no influence at all - I have just followed the KDE losely for quite a while) but my wild guess would be fall 2005 :)
Re:The Future of Linux (Score:5, Funny)
Trolltechs license is great (Score:5, Informative)
Or you can stick with the open one...
I can't see why it would bother microsoft either way.
Re:QT's licence is BAD! (Score:5, Insightful)
Re:QT's licence is BAD! (Score:3, Insightful)
> QT isn't even free software
The GPL'ed version is. GPL'ed Qt != Win32 Qt, i.e. you need to view them as different products.
Trolltech have given us GPL'ed Qt, but they have absolutely no obligation to provide their Win32 version under the same license.
The price is a factor only if you want to develop using Trolltech's proprietary version. I suppose that if you can't afford that then you may have to consider cheaper alternatives, but this doesn't lead us to "QT's
Re:QT's licence is BAD! (Score:5, Interesting)
Why on earth not? If you've only ever agreed to the GPL license on their X11 version, there is absolutely nothing they can do to stop you from porting the library, like these people [sourceforge.net] are doing.
Re:QT's licence is BAD! (Score:5, Insightful)
I work for a small development house, and we were certainly able to afford it. $1550 is less than two weeks' salary (and that's before counting expenses on the top of the payroll) so if Qt can save that much developer time it's worth buying. Note that the price includes good technical support.
The price is quite reasonable (Score:3, Insightful)
The price is per developer, not per user.
Have you checked the prices on Win32 development tools? $1550 isn't cheap, but it's far from outrageous or out of reach.
If that is out of your budget, you aren't a "smaller development house" -- you haven't even learned to think like a business yet. Products like Qt save development time, which allows lower bids, which means more revenue. If you can't work the numbers, go back to the basement -- your business won't be outgrowing it for quite some time.
Re:Does it include something like, well "QDBC"? (Score:2, Informative)
http://doc.trolltech.com/3.3/sql.html
Re:Its obvious why QT is better than Java (Score:2)
An on-topic joke, methinks.
Re:Scribe (Score:2)
Well, now that I think of it, it is because Qt has to be a clean room implementation... But I don't see anything wrong using Pango (as an external library, like FreeType) on systems where it is available.