Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. Other Discussions
  3. IT & Infrastructure
  4. How important is MFC?

How important is MFC?

Scheduled Pinned Locked Moved IT & Infrastructure
c++questioncsharpgraphics
5 Posts 3 Posters 2 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    Sky High
    wrote on last edited by
    #1

    I am a control theorist with many years of programming experience. I can code in C/C++, Java, FORTRAN, VB6, VB.NET and C#. However, all this time I have avoided Visual C++ and MFC. Now I have a project that really needs the speed and flexibility of an unmanaged platform on Windows 7. It will be a realtime simulation with DirectX 11 graphics. My question is, where should I start? Is MFC still relevant? What is ATL? What are my choices at this juncture? I am a very quick learner and I am willing to learn anything. Where should I start?

    O K S 3 Replies Last reply
    0
    • S Sky High

      I am a control theorist with many years of programming experience. I can code in C/C++, Java, FORTRAN, VB6, VB.NET and C#. However, all this time I have avoided Visual C++ and MFC. Now I have a project that really needs the speed and flexibility of an unmanaged platform on Windows 7. It will be a realtime simulation with DirectX 11 graphics. My question is, where should I start? Is MFC still relevant? What is ATL? What are my choices at this juncture? I am a very quick learner and I am willing to learn anything. Where should I start?

      O Offline
      O Offline
      oscar1966
      wrote on last edited by
      #2

      Hello MFC users, I asked the same question. Is MFC (still) relevant, because the complexity is higher than e.g. VCL. VCL is a class/ component base for Delphi and C++Builder of Borland. In my opinion the whole .Net environement (Visual Studio) is build on the classes of MFC. For the majority of developers MFC seems to be too complex. It takes a long time to learn and it's not easy to keep hands on with it. Not using it some months often meens starting from scratch again. Microsoft developers themselves belief it to be hard to use MFC. Internally they made other initiatives that sometimes became (unintended) popular outside MS. ATL is one of these. For very quick coding developers still rely on more pure Win32 objects and functions. At the launch of Windows 7 I asked the "stupid" question, wheter Windows 7 is still based upon MFC, as NT and derivatives were. The technical MS people couldn't answer this question. MS believes its own architecture to be to complex to explain to its own technicians in the field. The freedom to mix everything and even mix with STL (standard library for C++; for portability over other operating systems like Unix) makes C and C++ very powerfull. But makes the learnability decrease as well. Because of the installed base for MFC I said good bye to VCL 10 years ago, but to be honest: in MFC I still can't be that productive as I was in Borlands VCL. The use of the wellknown MFCxxx.dll files in the deployement of applications proves the relavance of MFC. Try to remove these dll files and see your self which applications turn out to be not working anymore. The use of these MFCxxx.dll's garantied an enormous reuse of code-elements. On a low level all these elements were tested over and over again. The long lifecycle and the low number of successive versions for these files have been a sign of robustness of these files. More or less they have been the backbone for the successes of MS after Windows95. Very strange that MS did little effort on explaining its object-oriented architecture to a large public. At the moment I try as an amateur-programmer to hide complexity of all function and class libraries with the use of specific DLL's. What was made with VCL can be reused in the future this way. But also reused with ATL, STL, Win32, etc. And it can be reused with all the languages that are supported by .Net. It's the only way to use managed code next to unmanaged code in a robust way. The complexity of using dll's in MFC is one of the reason's that many develo

      K 1 Reply Last reply
      0
      • S Sky High

        I am a control theorist with many years of programming experience. I can code in C/C++, Java, FORTRAN, VB6, VB.NET and C#. However, all this time I have avoided Visual C++ and MFC. Now I have a project that really needs the speed and flexibility of an unmanaged platform on Windows 7. It will be a realtime simulation with DirectX 11 graphics. My question is, where should I start? Is MFC still relevant? What is ATL? What are my choices at this juncture? I am a very quick learner and I am willing to learn anything. Where should I start?

        K Offline
        K Offline
        Kevin McFarlane
        wrote on last edited by
        #3

        Sky High wrote:

        Is MFC still relevant?

        Yes, and it is till being developed as each new version of Windows is released.

        Sky High wrote:

        What is ATL?

        Active Template Library - used for creating COM components.

        Sky High wrote:

        What are my choices at this juncture?

        You could also try WTL (Windows Template Library). This is now open source and many people rate it. There will be some tutorials on Code Project. There is also Qt, which is highly regarded.

        Sky High wrote:

        Where should I start?

        Hmmm, I don't know. MFC is the most widely used for Windows development so you may as well start there. Greater chance of getting help.

        Kevin

        1 Reply Last reply
        0
        • O oscar1966

          Hello MFC users, I asked the same question. Is MFC (still) relevant, because the complexity is higher than e.g. VCL. VCL is a class/ component base for Delphi and C++Builder of Borland. In my opinion the whole .Net environement (Visual Studio) is build on the classes of MFC. For the majority of developers MFC seems to be too complex. It takes a long time to learn and it's not easy to keep hands on with it. Not using it some months often meens starting from scratch again. Microsoft developers themselves belief it to be hard to use MFC. Internally they made other initiatives that sometimes became (unintended) popular outside MS. ATL is one of these. For very quick coding developers still rely on more pure Win32 objects and functions. At the launch of Windows 7 I asked the "stupid" question, wheter Windows 7 is still based upon MFC, as NT and derivatives were. The technical MS people couldn't answer this question. MS believes its own architecture to be to complex to explain to its own technicians in the field. The freedom to mix everything and even mix with STL (standard library for C++; for portability over other operating systems like Unix) makes C and C++ very powerfull. But makes the learnability decrease as well. Because of the installed base for MFC I said good bye to VCL 10 years ago, but to be honest: in MFC I still can't be that productive as I was in Borlands VCL. The use of the wellknown MFCxxx.dll files in the deployement of applications proves the relavance of MFC. Try to remove these dll files and see your self which applications turn out to be not working anymore. The use of these MFCxxx.dll's garantied an enormous reuse of code-elements. On a low level all these elements were tested over and over again. The long lifecycle and the low number of successive versions for these files have been a sign of robustness of these files. More or less they have been the backbone for the successes of MS after Windows95. Very strange that MS did little effort on explaining its object-oriented architecture to a large public. At the moment I try as an amateur-programmer to hide complexity of all function and class libraries with the use of specific DLL's. What was made with VCL can be reused in the future this way. But also reused with ATL, STL, Win32, etc. And it can be reused with all the languages that are supported by .Net. It's the only way to use managed code next to unmanaged code in a robust way. The complexity of using dll's in MFC is one of the reason's that many develo

          K Offline
          K Offline
          Kevin McFarlane
          wrote on last edited by
          #4

          oscar1966 wrote:

          In my opinion the whole .Net environement (Visual Studio) is build on the classes of MFC

          Hmm, not sure about that. It's certainly built with C++. But some parts are written in C# and of course VS 2010 uses WPF.

          oscar1966 wrote:

          Internally they made other initiatives that sometimes became (unintended) popular outside MS. ATL is one of these

          You mean WTL.

          oscar1966 wrote:

          At the launch of Windows 7 I asked the "stupid" question, wheter Windows 7 is still based upon MFC, as NT and derivatives were.

          Windows from at least XP onwards is written mostly in C with some C++, Assembler and Managed C++ (C++/CLI).

          Kevin

          1 Reply Last reply
          0
          • S Sky High

            I am a control theorist with many years of programming experience. I can code in C/C++, Java, FORTRAN, VB6, VB.NET and C#. However, all this time I have avoided Visual C++ and MFC. Now I have a project that really needs the speed and flexibility of an unmanaged platform on Windows 7. It will be a realtime simulation with DirectX 11 graphics. My question is, where should I start? Is MFC still relevant? What is ATL? What are my choices at this juncture? I am a very quick learner and I am willing to learn anything. Where should I start?

            S Offline
            S Offline
            Sky High
            wrote on last edited by
            #5

            Thank you all for the informative comments.

            1 Reply Last reply
            0
            Reply
            • Reply as topic
            Log in to reply
            • Oldest to Newest
            • Newest to Oldest
            • Most Votes


            • Login

            • Don't have an account? Register

            • Login or register to search.
            • First post
              Last post
            0
            • Categories
            • Recent
            • Tags
            • Popular
            • World
            • Users
            • Groups