views:

84

answers:

3

I have known many good applications (including UG Team Center, IBM Lotus Expeditor etc.,) developed over Eclipse (RCP Framework). Of late, i find some application developed over Qt Creator exploiting its plug-in architecture (GCF, VTK designer etc.,).

I wish to know the pros and cons of Eclipse and Qt Creator as base framework for developing applications over it. Also if someone can list down the modules that support the applications in each of these framework. Which one do you recommend for a cross-platform application development?

many thanks.

+1  A: 

Initially I was a huge fan of QtCreator. Then I discovered that it was letting me get away with many programmatic things that I shouldn't have. I can't remember any off the top of my head, but when I ported to Mac OSX I decided to build it in XCode rather than QtCreator. Upon my build, I discovered a load of errors that I had never seen.

...And I had known this as normally functioning code...

Anyways, I still work in Qt a lot and thoroughly enjoy it, but I develop in Visual Studio, XCode, and GCC on their respective platforms. Sorry that I can't remember any examples, I ran into this problem 6 months ago.

Brett
This has a) nothing to do with Qt (Creator), and b) no relevance whatsoever (Qt vs Eclipse). Your problem was probably MSVC vs gcc producing different errors on the non-standard code you wrote. Different compilers produce different errors. The IDE or framework has little or nothing to do with that.
rubenvb
I guess then I was just pretty unhappy with the compiler that QtCreator had me using. I had previously been developing in MSVC and GCC, so I thought I was writing standard code. It was just somewhat frustrating that the compiler let that happen, where as I haven't run into troubles like that going between MSVC and GCC.
Brett
@Brett: it could have been the ancient 3.4.5 MinGW GCC of course (which could also explain the switch in errors), then I retract (some) of my comment :). You can use any compiler/toolchain you want with Qt, it just needs a little setup, that's all.
rubenvb
@rubenvb: Hrmm, I guess maybe I'll have to re-visit that issue then. I was extremely happy with QtCreator, because of how well it worked with Qt, but those issues really threw me. Thanks for the input, but I'll leave the disclaimer of watch out for the compiler on QtCreator, and try to use something more current!
Brett
@Brett: I agree with rubenvb. you can use any compiler, make system with Qt creator. Also your error seem to be irrelevant to Qt Creator as framework. I use the latest Qt creator (Qt creator 2.0, release candidate). It is too good as an IDE. I am interested to know the advantages as an framework. @rubenvb: I believe Eclipse team is way too experienced than Qt creator team. Eclipse / RCP has a wider community to support as well. So i don't agree with the experience point of yours.
Arun
I was speaking about Qt as a software framework, not as an IDE/plugin thing. And nobody prevents you from coding Qt in Eclipse ;)
rubenvb
@Brett: the newest releases include GCC 4.4, so it's become a non-issue I believe
rubenvb
@rubenvb great thanks for the info, I'm looking forward to giving it another shot!
Brett
A: 

Eclipse is more an Java-based, Qt is C++ and some helpful additions (signals+slots among others). I've never heard of Eclipse as a framework, but that of course does not speak for or against it. I'll give my thoughts on Qt here:

I believe strongly in Qt as a base, because it (its devs) has had years of experience providing a good cross-platform framework with pretty much everything you'll ever need. It has network, file system, gui, algorithms, containers, translation tools, UI designer, VERY good documentation, and a solid community. It is C++ based, which makes interaction with pretty much any C or C++ library "a breeze". Qt is by far the more mature player here.

rubenvb
I never used Qt, but I think stating that it's more mature then eclipse without knowing what eclipse is about is irresponsible.Basically, eclipse has everything you mentioned, minus a free UI designer (there are commercial versions). I've been working with eclipse for 3 years now and have no major complaints.
drstupid
I'll try to clarify: I'm talking about maturity in the sense of "years of experience and existence". Eclipse has been around since 2005 (first release: December 2005, I'm not even sure about the RCP). Qt has been around since 1991. I'm sure Eclipse is equally good, but as you say, I can't know that. I'm also not talking about Eclipse IDE vs QtCreator, there Eclipse has more experience, QtCreator 1.0.0 was released a year ago.
rubenvb
http://www.ibm.com/developerworks/rational/library/nov05/cernosek/index.html
drstupid
+1  A: 

Disclaimer: I hack on creator

I consider both creator and Eclipse to be stable and pretty full-featured IDEs. Creator is focusing heavily on C++ and Quick (the new bling thing in Qt land;-) while Eclipse supports a whole host of languages, with its Java support really shining. This of course does also influence the functionality your plugin can easily provide.

The first visible difference to a plugin developer is of course the programming language: Eclipse is written in Java while creator is developed using C++ with Qt. Depending on your development background that can be pretty significant.

Both provide a decent plugin system with all the mayor functionality like handling dependencies between plugins, versioning, etc. I guess the plugin system of Eclipse is a bit more "battle-hardened" by now, since they have quite a few more 3rd party plugins that is constantly "testing" it. Both projects have some APIs that are still developing (my impression is that this less of an issue with eclipse at this time), so it is worth checking the roadmaps.

Eclipse tends to have more plugins available and this can be an advantage if your plugin can benefit from functionality already implemented in other plugins. Graphic modeling, etc springs to mind here. Creator does not have that many plugins yet, but there is lots of Qt-based open-source code available which should be straight forward to port into plugins (if the licensing permits this!).

Both projects are open source, so you can view the code. The license is different though Qt Creator and Eclipse. Better get a lawyer to read over them if you consider doing a proprietary plugin for either of them... but that is just standard advice:-)

Both project have welcoming user communities that are willing to help when getting stuck and both projects accept code contributions (in case you do not want to keep updating your code yourself all the time;-).

That is what I can think about at the top of my head...

Tobias Hunger