Re: MFC future?



In article news:<uqFbguCAGHA.3804@xxxxxxxxxxxxxxxxxxxx>, Mike Goldweber
wrote:
> So, what is the best way to produce dialog based apps using a C++
> language?

I use MFC. Using either/both VC6 and VS2003 (and VS2005 beta). A number of
my clients have not upgraded from VC6 to VS2003 (for various reasons) so I
still have to use VC6 some of the time. VS2003 has a better C++ compiler
but the IDE in 2003 is not as productive for C++ (especially MFC)
applications.

I don't write dialog-based apps, though. I write SDI doc/view applications
based around a CFormView. These look fairly like dialogs but have several
advantages (file support, toolbars, status bar, etc.). I write the GUI code
using MFC, but I write the back-end code using standard C++ (with nothing
Microsoft-specific) so it is easy to port to other systems. It is good
design to make a clear separation between application logic and user
interface code, and this practice enforces that.

> My last job used Borland Builder to produce dialogs, and
> that was great fun.

Borland's C++ Builder and Delphi tools make prototyping a GUI using the
supplied VCL components very quick and painless, but I have always found
that the job gets much harder as soon as you need to do something that you
can't do with a ready-made component out of the box. Some aspects of the
VCL (such as data-aware controls) can be very powerful in simple apps, but
introduce unwanted relationships between application logic and GUI code and
can be a source of unnecessary complexity in larger apps. Overall I find
MFC at least as productive.

> I'm relatively new to building gui's with MFC, but after reading some of
> the comments here, I'm not so sure this is a good use of my time?

It depends what you want to do/are called upon to do. MFC is still
Microsoft's best and only tool for programming native-code C++ applications
for Windows.

If you want to write managed .NET applications (rather than native code)
you can still use C++ (especially if you're using VS2005) but you will
probably use Windows Forms instead of MFC. There are reasons to want to use
Forms, and reasons not to.

If you want to target non-windows systems such as linux or the Mac you
shouldn't use MFC, but should look instead at one of the cross-platform
toolkits such as Qt (commercial) or wxWidgets (Open Source). wxWidgets also
targets Windows CE (or whatever it's called today) which MFC doesn't.

> My new company just converted to Visual Studio .Net
> 2003. If this set of tools has a better method of making user
> interfaces, I'm all of devoting my time to learning that.

MFC is one of the tools provided in VS 2003, so your company's choice
doesn't restrict you (though, as I said, many of us feel that the VC6 IDE
was easier to use).

Cheers,
Daniel.


.



Relevant Pages

  • Re: MFC Gui Apps
    ... Personally, this is what I am doing with my old apps, but I am really not sure what I would do if I were starting a new app. ... One thing I am doing with my old apps as I work on them is taking every possible piece of functionality out of my MFC GUI classes and putting it ... I don't care so much about this for my MFC-derived classes, but I would like to have a better compiler for my back-end. ... Although I can compile my back-end with VC7.1, I cannot link this with my VC6 GUI because I transfer standard library components back and forth. ...
    (microsoft.public.vc.mfc)
  • Re: Forms and VC++
    ... programmers. ... pretty well forced into giving them an introduction to MFC. ... capability is easier to use than MFC. ... etc. - .NET has garbage collection of course so your C++ apps will no longer ...
    (microsoft.public.vc.language)
  • Re: Followup: Native win32 apps still require .NET runtime?
    ... >any thought I had of compiling my MFC app with CLR. ... I've written lots of MFC apps but haven't been tempted to recompile ... it may fix the bug I've seen, so I don't want to do that. ... I was originally skeptical someone told me about the DLL problem. ...
    (microsoft.public.dotnet.languages.vc)
  • Re: Future of MFC?
    ... those that used MFC in VC6 are still doing native-only coding. ... Apps which needed the extra something already have it thru 3rd party or in-house development. ... For me, a major downside is I would have to give up static linking, and complicate my distribution with MFC/CRT DLL's and the .NET runtime. ... part of what MS can offer to native coders is an IDE that is competitive with VC6. ...
    (microsoft.public.vc.mfc)
  • Re: CodeJock MFC products now 50% off thru end of October 2007
    ... All the legacy continues to be what it was C++ etc but new apps are predominantly .Net. ... For web applications, yes. ... I did MFC for over 10 years and have been doing .Net for over a year. ...
    (microsoft.public.vc.mfc)

Loading