Is MFC still fully supported by Microsoft
Question
Tuesday, December 29, 2015 8:07 AM
Hi guys, I am asking this question because I really think that MFC is a really great framework with even better potential, especially now when we have C++ renaissance and new kids on the block like QT are starting to show their weaknesses.
So is Microsoft fully committed to support MFC?
Thank you.
All replies (13)
Tuesday, December 29, 2015 9:37 AM âś…Answered | 1 vote
I believe Microsoft is committed to support MFC for the foreseeable future, but it is pretty much in maintenance mode. So I would not say that MFC has potential; whatever (considerable) potential it had has been realized long ago.
20 years ago when I started learning C++, using MFC for Windows applications was a no-brainer. Today, not so much, though the alternatives are in many ways less capable.
David Wilkinson | Visual C++ MVP
Tuesday, December 29, 2015 9:47 AM | 1 vote
Hi Dave,
Thanks for your answer. I am actually hooked up by MFC (after working with QT, Borland and what not), and your last sentence is what makes me love MFC to bits.
I hope the time will come when MFC will have its renaissance just like C++ had/has now after being thought of by many as a dead/old fashioned language.
Thank you once again.
Tuesday, December 29, 2015 1:16 PM | 1 vote
Why would I want MFC on android? MFC is native to windows and should stay that way. BTW, lots of unimaginative people were saying exactly the same things about C++ and that its days are numbered. How wrong they were I'm glad to say.
Tuesday, December 29, 2015 1:21 PM | 1 vote
Regardless of how much we value C++ as a language or MFC as a development framework it is clear (at least to me) from Microsoft's massive investment in developing and promoting C# and the .Net framework that C++/MFC is no longer at the top of the development tool pyramid. The fact that a default installation of VS2015 excludes VC++/MFC speaks volumes.
Tuesday, December 29, 2015 2:33 PM
@RLWA32 Actually Microsoft invests more and more (since I believe 2012) in C++ and everything what's go with it and around it. The prove is, among many, many things, that they actually are putting enormous effort in updating their C++ compiler, having clang for windows Desktop as their second compiler, etc, etc. so, the things are looking that MS reinvests in C++ because their realized (watch Herb Sutter's video on that subject) whether you on Desktop or mobile, you need as much power as you possibly can get, especially on mobile, where batteries lives are crucial factor.
"The fact that a default installation of VS2015 excludes VC++/MFC speaks volumes." - that was an overlook (explained in one of the talks in cppcon2015) and will be fixed in upcoming update.
Tuesday, December 29, 2015 3:03 PM
Everything is relative. I didn't say that development on C++ had ended.
However, when compared to the prominence that MS has given to C# I don't believe that C++ is still the flagship of development languages in the MS stable.
Of course, that's just my opinion.
Tuesday, December 29, 2015 3:32 PM
@RLWE32
The prominence that MS has given to C# started over decade ago when most people thought that native development is dead and Java is the only sensible way to go (and C# is Java from MS). As I've pointed out in my previous post live didn't work that way and C++ is simply too good at what it's doing to be simply let go. And power costs money. Nobody in right mind wouldn't care for that. C++ is being rediscovered by MS. Evidence? Plenty, just look at MS latest releases.
Tuesday, December 29, 2015 6:22 PM
C++ is being rediscovered by MS. Evidence? Plenty, just look at MS latest releases.
Ok and what we see there? Clang and Android NDK ... The MS own C++ compiler loses the race.
Tuesday, December 29, 2015 8:44 PM | 2 votes
I'm a Sr. Escalation Engineer in Microsoft Developer Support, and my specialties have been VC++ and MFC since the beginning, although I also support dozens of other developer technologies. I am regularly in direct contact with the product groups for the VC++ compiler, tools, and the runtime libraries. There are no worries that VC++ or MFC support will go away in the foreseeable future.
That said, there is no interest currently in investing resources to add features to MFC. Because MFC is limited to Windows desktop apps, and you cannot currently develop "Modern" or "Universal" apps that target the Windows Store, phone devices (including Windows, Android, and iPhone), MFC is not slated for any investment at this time.
It will continue to be supported for a very long time. Just look at how long we've been supporting the VB6 runtime (a 1998 product!).
The VC++ compiler and CRT and other runtime libraries continue to have more investment to bring them up to date with the latest C++ standards, because this is still a VERY viable language for targeting the newest technologies. We want companies that write C++ code for multiple platforms and compilers to trust VC++ when compiling their standard code for Windows or ARM devices.
Scot
Developer Support Engineer
Tuesday, December 29, 2015 8:54 PM | 2 votes
RLWA32,
Let me speak to the decision to not make VC++ a default install in VS 2015. It has nothing to do with Microsoft's commitment to the language. It will always have its place as a first-class citizen in our suite of developer products.
But the .NET languages like C# and VB.NET are much easier to use to create code that runs on a variety of platforms. For rapid development, these languages replace VB6 as the best choice for shops who need lower development costs and a large suite of out-of-the-box runtime classes to accomplish their goals. VC++ wins for those shops who require lower overhead, smaller footprint, and faster execution.
Both native and managed languages have their place, but there are currently far more choosing the managed languages than VC++, because of the RAD advantages.
Many in the Visual Studio team actually would like to make all of the languages optional to speed up the install time of VS by limiting to only those things the users actually want. But so far, VC++ is the only one they were ready to do that with.
A lot of my job security depends on the future of VC++, and I'm not worried for my future.
Scot
Developer Support Engineer
Tuesday, December 29, 2015 9:19 PM | 1 vote
Scot,
This is a tempest in a teapot. The focus on the VS2015 installation is a red herring. So I'll repeat my earlier statement for the sake of clarity.
"Everything is relative. I didn't say that development on C++ had ended.
However, when compared to the prominence that MS has given to C# I don't believe that C++ is still the flagship of development languages in the MS stable.
Of course, that's just my opinion."
'Nuff said.
Tuesday, December 29, 2015 9:35 PM
RLWA32,
I agree. It's not the "flagship of development languages".
I just wanted to make it clear, because of smallC795's concern about commitment, that it's also not an unwanted stepchild. Microsoft is highly committed to continued development of VC++, and ongoing support for MFC.
Scot
Developer Support Engineer
Wednesday, December 30, 2015 8:45 AM
@Scot
Hi, I'd like to really thank you for your answer and assurance. It does make me feel better.
I really do believe that MFC can (after facelift) be THE technology for Win Desktop.
Best regards