Qt ready to replace MFC as favorite C++ framework [modified]
-
pseudonym67 wrote:
MFC is nothing more than an out of date framework that has been passed by along with the shift to .net languages.
I thought C++ had already been replaced by Java. 10 years ago.
C++ still very much alive on MAC and Linux. (whole KDE is develop in QT only). But only in windows C++ is dying because of Microsoft.
Sudhir Mangla http://tips.DevelopersVoice.com (Technical Tips and Tricks) http://Programmerworld.net (Free books and source code) http://Faq.Programmerworld.net (FAQ and Tips for programmers)
http://health.Programmerworld.net (Health tips) -
C++ still very much alive on MAC and Linux. (whole KDE is develop in QT only). But only in windows C++ is dying because of Microsoft.
Sudhir Mangla http://tips.DevelopersVoice.com (Technical Tips and Tricks) http://Programmerworld.net (Free books and source code) http://Faq.Programmerworld.net (FAQ and Tips for programmers)
http://health.Programmerworld.net (Health tips) -
As far as I understand it from the microsoft point of view MFC and C++ are dead ducks. MFC is nothing more than an out of date framework that has been passed by along with the shift to .net languages. C++ on the other hand was brutally dragged out into the street and slaughtered by the abomination that is C++.net or whatever monicker they've given to it these days. As for Qt yes it is the best modern C++ development framework around. No it is not as good as MFC was in it's day. Qt still needs a hell of a lot of work doing to it admittedly most of it is sorting out the minor inconviences that plague develpment such as the shoddy gui implementation and the fact that if you actually want to develop any kind of serious application you pretty much have to write it out yourself. It basically needs polishing with the end user in mind and then it needs polishing again just to get the bits they missed the first time.
pseudonym67 My Articles[^] Beginning KDevelop Programming[^]
pseudonym67 wrote:
As far as I understand it from the microsoft point of view MFC and C++ are dead ducks.
Actually microsoft is developing new OS Windows7 using C++ only but I still can't understand why they don't want to promote C++. For developing there internal application like Windows7, Office products and windows live suite microsoft must have develop a good C++ library of internal version of MFC but for some unknown reasons they don't want to make and C++ framework open to public.
Sudhir Mangla http://tips.DevelopersVoice.com (Technical Tips and Tricks) http://Programmerworld.net (Free books and source code) http://Faq.Programmerworld.net (FAQ and Tips for programmers)
http://health.Programmerworld.net (Health tips) -
As far as I understand it from the microsoft point of view MFC and C++ are dead ducks. MFC is nothing more than an out of date framework that has been passed by along with the shift to .net languages. C++ on the other hand was brutally dragged out into the street and slaughtered by the abomination that is C++.net or whatever monicker they've given to it these days. As for Qt yes it is the best modern C++ development framework around. No it is not as good as MFC was in it's day. Qt still needs a hell of a lot of work doing to it admittedly most of it is sorting out the minor inconviences that plague develpment such as the shoddy gui implementation and the fact that if you actually want to develop any kind of serious application you pretty much have to write it out yourself. It basically needs polishing with the end user in mind and then it needs polishing again just to get the bits they missed the first time.
pseudonym67 My Articles[^] Beginning KDevelop Programming[^]
pseudonym67 wrote:
minor inconviences ... such as
pseudonym67 wrote:
shoddy gui implementation
pseudonym67 wrote:
if you actually want to develop any kind of serious application you pretty much have to write it out yourself
You know, if you think those are minor inconveniences, I'd hate to find out what you think the major ones are.
-
As far as I understand it from the microsoft point of view MFC and C++ are dead ducks. MFC is nothing more than an out of date framework that has been passed by along with the shift to .net languages. C++ on the other hand was brutally dragged out into the street and slaughtered by the abomination that is C++.net or whatever monicker they've given to it these days. As for Qt yes it is the best modern C++ development framework around. No it is not as good as MFC was in it's day. Qt still needs a hell of a lot of work doing to it admittedly most of it is sorting out the minor inconviences that plague develpment such as the shoddy gui implementation and the fact that if you actually want to develop any kind of serious application you pretty much have to write it out yourself. It basically needs polishing with the end user in mind and then it needs polishing again just to get the bits they missed the first time.
pseudonym67 My Articles[^] Beginning KDevelop Programming[^]
pseudonym67 wrote:
the shoddy gui implementation and the fact that if you actually want to develop any kind of serious application you pretty much have to write it out yourself.
WHAT? I mean there is so much more in Qt than MFC. To me it is so much easier writing applications in Qt because I do not have to extend the library because of a missing but important feature. Several of these important features are the layouts, the dynamic windows, dynamic events, the and the built-in grid control. [EDIT]And before every one thinks I have never used MFC, I have actually written >500K lines of MFC code over the last 12 or so years. And about 10K lines in Qt. I am totally amazed on how much easier to program with Qt versus MFC. [/EDIT]
John
modified on Saturday, January 24, 2009 10:10 AM
-
C++ still very much alive on MAC and Linux. (whole KDE is develop in QT only). But only in windows C++ is dying because of Microsoft.
Sudhir Mangla http://tips.DevelopersVoice.com (Technical Tips and Tricks) http://Programmerworld.net (Free books and source code) http://Faq.Programmerworld.net (FAQ and Tips for programmers)
http://health.Programmerworld.net (Health tips)Sudhir Mangla wrote:
C++ still very much alive on MAC and Linux. (whole KDE is develop in QT only). But only in windows C++ is dying because of Microsoft.
I know, that was just sarcasm ;) 10 years ago everyone predicted that Java would kill C++ and since 5 years everyone says .NET will kill C++. It's getting boring. The only advantage of Java/.NET are the good base class libraries. For C++ you have only a mix of libraries, C runtime, STL, maybe Boost and MFC. A state of the art base class library from IO to UI is needed. I think Qt could fill this gap.
-
Nokia has announced plans to make the open source Qt toolkit available under GNU's Lesser General Public License (LGPL), alongside the existing GPL and commercial licensing options. This change could significantly boost Qt adoption, redefine the economics of cross-platform programming, and dramatically reshape the landscape of commercial application development using C++. Now the question is will Microsoft take some time to Improve MFC for Windows. Although as VS2008 Service pack Microsoft as tried to Improve MFC. But Still if I compare QT with MFC , QT is much much batter than MFC both in design and Functionality and QT is much more updated for modern programming.Anyone who has used QT will be able to tell where MFC stand against QT. QT is better then MFC and can run on nearly any platform this make it a Big challenge for MFC. For most of my career I have worked on MFC. But if MFC remains a dead project QT will be the obvious choice. Main problem for QT was its license. But now that problem is solved. I near future if Microsoft did not improve MFC most of the C++ programmer will switch to QT. Want to know your comment do U feel Microsoft will respond to QT challenge. -------------------- In addition to adopting the LGPL license for Qt, Nokia will also be completely changing Qt development model to make it more inclusive and transparent. The source code will be moved to a publicly-accessible Git repository so that the latest changes will always be visible.
Sudhir Mangla http://tips.DevelopersVoice.com (Technical Tips and Tricks) http://Programmerworld.net (Free books and source code) http://Faq.Programmerworld.net (FAQ and Tips for programmers)
http://health.Programmerworld.net (Health tips)modified on Monday, January 26, 2009 10:53 AM
I'm interested in the claims you make for Qt:
- QT is much much batter than MFC both in design and Functionality
- QT is much more updated for modern programming
- QT is better then MFC
What are your reasons for making these claims? Can you give us any links to comparisons that justify your claims? I have used Qt on one contract because a client requested it, and while I appreciate the cross-platform benefit, I would never consider recommending Qt for a Windows-only project, for exactly the opposite reasons of what you have stated: Qt is not as well designed as MFC, Qt offers less functionality and less flexibility than MFC, Qt is not as well integrated into the VS IDE as MFC, and Qt in general is harder to work with than MFC. Still, I am not a Qt expert, so I would like to understand it from your point of view. If you could provide some justifications or links, I would appreciate it.
Best wishes, Hans
[CodeProject Forum Guidelines] [How To Ask A Question] [My Articles]
-
pseudonym67 wrote:
minor inconviences ... such as
pseudonym67 wrote:
shoddy gui implementation
pseudonym67 wrote:
if you actually want to develop any kind of serious application you pretty much have to write it out yourself
You know, if you think those are minor inconveniences, I'd hate to find out what you think the major ones are.
I am very confused how these conclusions are reached. Qt is significantly better than MFC in each of these in my opinion.
John
-
I'm interested in the claims you make for Qt:
- QT is much much batter than MFC both in design and Functionality
- QT is much more updated for modern programming
- QT is better then MFC
What are your reasons for making these claims? Can you give us any links to comparisons that justify your claims? I have used Qt on one contract because a client requested it, and while I appreciate the cross-platform benefit, I would never consider recommending Qt for a Windows-only project, for exactly the opposite reasons of what you have stated: Qt is not as well designed as MFC, Qt offers less functionality and less flexibility than MFC, Qt is not as well integrated into the VS IDE as MFC, and Qt in general is harder to work with than MFC. Still, I am not a Qt expert, so I would like to understand it from your point of view. If you could provide some justifications or links, I would appreciate it.
Best wishes, Hans
[CodeProject Forum Guidelines] [How To Ask A Question] [My Articles]
Qt has much more than basic UI elements.
-
I am very confused how these conclusions are reached. Qt is significantly better than MFC in each of these in my opinion.
John
Why ask me? I was just quoting someone else. Ask them...
John M. Drescher wrote:
Qt is significantly better than MFC in each of these in my opinion.
Examples? Code you've written? Commerical apps developed for Windows using QT?
-
I'm interested in the claims you make for Qt:
- QT is much much batter than MFC both in design and Functionality
- QT is much more updated for modern programming
- QT is better then MFC
What are your reasons for making these claims? Can you give us any links to comparisons that justify your claims? I have used Qt on one contract because a client requested it, and while I appreciate the cross-platform benefit, I would never consider recommending Qt for a Windows-only project, for exactly the opposite reasons of what you have stated: Qt is not as well designed as MFC, Qt offers less functionality and less flexibility than MFC, Qt is not as well integrated into the VS IDE as MFC, and Qt in general is harder to work with than MFC. Still, I am not a Qt expert, so I would like to understand it from your point of view. If you could provide some justifications or links, I would appreciate it.
Best wishes, Hans
[CodeProject Forum Guidelines] [How To Ask A Question] [My Articles]
For QT vs MFC check this link http://phil.freehackers.org/kde/qt-vs-mfc.html[^] And for checking functionality provided by QT check documentation http://www.qtsoftware.com/products/appdev/library/modular-class-library[^]
Sudhir Mangla http://tips.DevelopersVoice.com (Technical Tips and Tricks) http://Programmerworld.net (Free books and source code) http://Faq.Programmerworld.net (FAQ and Tips for programmers)
http://health.Programmerworld.net (Health tips) -
I'm interested in the claims you make for Qt:
- QT is much much batter than MFC both in design and Functionality
- QT is much more updated for modern programming
- QT is better then MFC
What are your reasons for making these claims? Can you give us any links to comparisons that justify your claims? I have used Qt on one contract because a client requested it, and while I appreciate the cross-platform benefit, I would never consider recommending Qt for a Windows-only project, for exactly the opposite reasons of what you have stated: Qt is not as well designed as MFC, Qt offers less functionality and less flexibility than MFC, Qt is not as well integrated into the VS IDE as MFC, and Qt in general is harder to work with than MFC. Still, I am not a Qt expert, so I would like to understand it from your point of view. If you could provide some justifications or links, I would appreciate it.
Best wishes, Hans
[CodeProject Forum Guidelines] [How To Ask A Question] [My Articles]
Hans Dietrich wrote:
Qt is not as well designed as MFC
In my opinion it is much better designed. It definitely is better OO code, signals and slots are much better than the event model...
Hans Dietrich wrote:
Qt offers less functionality
How? There is so much more functionality in Qt than there is in MFC. What about dynamic window layouts? Doing this in MFC requires hundreds of lines of code. And signals and slots are so much easier to work with than the event model.
Hans Dietrich wrote:
Qt is not as well integrated into the VS IDE as MFC
With the open source version it is not integrated at all so I agree. However I do not miss that. I think 5 years ago with VC6 I would have missed it more but since VC went .NET adding events via the class view has not been all that great anyways so I have been doing this mostly manually anyways.
John
-
Why ask me? I was just quoting someone else. Ask them...
John M. Drescher wrote:
Qt is significantly better than MFC in each of these in my opinion.
Examples? Code you've written? Commerical apps developed for Windows using QT?
Graham Bradshaw wrote:
Why ask me?
Sorry, not asking you. Just wondering on how these conclusions were achieved.
Graham Bradshaw wrote:
Code you've written?
Yes, However none of it is released yet.
John
-
Qt has much more than basic UI elements.
This is a big help. Because in MFC I had to either roll many of these out myself or grab them off of codeproject.
John
-
Nokia has announced plans to make the open source Qt toolkit available under GNU's Lesser General Public License (LGPL), alongside the existing GPL and commercial licensing options. This change could significantly boost Qt adoption, redefine the economics of cross-platform programming, and dramatically reshape the landscape of commercial application development using C++. Now the question is will Microsoft take some time to Improve MFC for Windows. Although as VS2008 Service pack Microsoft as tried to Improve MFC. But Still if I compare QT with MFC , QT is much much batter than MFC both in design and Functionality and QT is much more updated for modern programming.Anyone who has used QT will be able to tell where MFC stand against QT. QT is better then MFC and can run on nearly any platform this make it a Big challenge for MFC. For most of my career I have worked on MFC. But if MFC remains a dead project QT will be the obvious choice. Main problem for QT was its license. But now that problem is solved. I near future if Microsoft did not improve MFC most of the C++ programmer will switch to QT. Want to know your comment do U feel Microsoft will respond to QT challenge. -------------------- In addition to adopting the LGPL license for Qt, Nokia will also be completely changing Qt development model to make it more inclusive and transparent. The source code will be moved to a publicly-accessible Git repository so that the latest changes will always be visible.
Sudhir Mangla http://tips.DevelopersVoice.com (Technical Tips and Tricks) http://Programmerworld.net (Free books and source code) http://Faq.Programmerworld.net (FAQ and Tips for programmers)
http://health.Programmerworld.net (Health tips)modified on Monday, January 26, 2009 10:53 AM
Frankly, I don't care what is the favorite framework. One of the best thngs about C++ is that it does not lock you into any framework - you can use any of existing ones, write your own, or not use frameworks at all (my favorite option). For GUI, I use WTL which is a lean library, not a bloated framework.
-
As far as I understand it from the microsoft point of view MFC and C++ are dead ducks. MFC is nothing more than an out of date framework that has been passed by along with the shift to .net languages. C++ on the other hand was brutally dragged out into the street and slaughtered by the abomination that is C++.net or whatever monicker they've given to it these days. As for Qt yes it is the best modern C++ development framework around. No it is not as good as MFC was in it's day. Qt still needs a hell of a lot of work doing to it admittedly most of it is sorting out the minor inconviences that plague develpment such as the shoddy gui implementation and the fact that if you actually want to develop any kind of serious application you pretty much have to write it out yourself. It basically needs polishing with the end user in mind and then it needs polishing again just to get the bits they missed the first time.
pseudonym67 My Articles[^] Beginning KDevelop Programming[^]
pseudonym67 wrote:
As far as I understand it from the microsoft point of view MFC and C++ are dead ducks.
When it comes to "enterprise" development. For ISVs, C++ is very much alive and is not going away.
-
Hans Dietrich wrote:
Qt is not as well designed as MFC
In my opinion it is much better designed. It definitely is better OO code, signals and slots are much better than the event model...
Hans Dietrich wrote:
Qt offers less functionality
How? There is so much more functionality in Qt than there is in MFC. What about dynamic window layouts? Doing this in MFC requires hundreds of lines of code. And signals and slots are so much easier to work with than the event model.
Hans Dietrich wrote:
Qt is not as well integrated into the VS IDE as MFC
With the open source version it is not integrated at all so I agree. However I do not miss that. I think 5 years ago with VC6 I would have missed it more but since VC went .NET adding events via the class view has not been all that great anyways so I have been doing this mostly manually anyways.
John
John M. Drescher wrote:
n my opinion it is much better designed. It definitely is better OO code,
MFC started out to be much more OO-oriented - much more similar to Borland's OWL framework. When MFC 1.0 was shown to Windows developers, their response forced MS to throw it out, and come up with the very thin wrapper that MFC is today. So, no, I don't think Qt is better designed, and if - as you state - it is better OO code, then that is a strike against it, not for it. When I'm writing MFC code, I don't have to continually think about how my code is going to map to Win32, since it is already thinly wrapped.
John M. Drescher wrote:
...signals and slots are much better than the event model
I disagree. Windows itself is event/message driven. To the extent that Qt is not, you will end up (at some point) fighting with or duplicating what Windows does. Remember that everything - Qt, MFC, .Net - sits on top of Win32.
John M. Drescher wrote:
What about dynamic window layouts?
I know there are many things in Qt that I would like to also see in MFC, but MFC has many more of these than Qt does - as, for example, its adherence to the basic Windows messaging model.
Best wishes, Hans
[CodeProject Forum Guidelines] [How To Ask A Question] [My Articles]
-
Frankly, I don't care what is the favorite framework. One of the best thngs about C++ is that it does not lock you into any framework - you can use any of existing ones, write your own, or not use frameworks at all (my favorite option). For GUI, I use WTL which is a lean library, not a bloated framework.
I agree. I have used WTL on several projects, and immediately felt comfortable with it (no surprise, since WTL started out as a lightweight alternative to MFC).
Best wishes, Hans
[CodeProject Forum Guidelines] [How To Ask A Question] [My Articles]
-
For QT vs MFC check this link http://phil.freehackers.org/kde/qt-vs-mfc.html[^] And for checking functionality provided by QT check documentation http://www.qtsoftware.com/products/appdev/library/modular-class-library[^]
Sudhir Mangla http://tips.DevelopersVoice.com (Technical Tips and Tricks) http://Programmerworld.net (Free books and source code) http://Faq.Programmerworld.net (FAQ and Tips for programmers)
http://health.Programmerworld.net (Health tips)Thanks for the links. I found the first one to be somewhat incoherent. Maybe you could do a better job, and post a Qt vs. MFC article here?
Best wishes, Hans
[CodeProject Forum Guidelines] [How To Ask A Question] [My Articles]
-
John M. Drescher wrote:
n my opinion it is much better designed. It definitely is better OO code,
MFC started out to be much more OO-oriented - much more similar to Borland's OWL framework. When MFC 1.0 was shown to Windows developers, their response forced MS to throw it out, and come up with the very thin wrapper that MFC is today. So, no, I don't think Qt is better designed, and if - as you state - it is better OO code, then that is a strike against it, not for it. When I'm writing MFC code, I don't have to continually think about how my code is going to map to Win32, since it is already thinly wrapped.
John M. Drescher wrote:
...signals and slots are much better than the event model
I disagree. Windows itself is event/message driven. To the extent that Qt is not, you will end up (at some point) fighting with or duplicating what Windows does. Remember that everything - Qt, MFC, .Net - sits on top of Win32.
John M. Drescher wrote:
What about dynamic window layouts?
I know there are many things in Qt that I would like to also see in MFC, but MFC has many more of these than Qt does - as, for example, its adherence to the basic Windows messaging model.
Best wishes, Hans
[CodeProject Forum Guidelines] [How To Ask A Question] [My Articles]
Hans Dietrich wrote:
I disagree. Windows itself is event/message driven. To the extent that Qt is not, you will end up (at some point) fighting with or duplicating what Windows does.
I see your point. My reasoning is the windows event model does not work as well when it comes to the ability to extend (user created messages) and run time / dynamic created controls and layouts. These are two things that I spent a lot of time in the past to force MFC to do what I wanted.
John