Continued support for MFC.. who said it?
-
MFC IS NOT AN "ORPHANED" PRODUCT!!! In fact, MFC is a growing product and has many new features in 7.0. MFC is a terrific library for developing native Windows applications. New features include classes to wrap new operating system features and tighter (seamless) integration with ATL. Note too that the 7.0 C++ compiler is extended with many new capabilities and refinements for the native developer. Given the enormous focus on .NET I understand the confusion on this subject. Suffice it to say that Microsoft is committed to the Windows C++ developer and so important products like MFC will not simply "go away" or stagnate.
>> MFC IS NOT AN "ORPHANED" PRODUCT!!! Nick, I understand your sincerity when you make a statement like that. But what worries me is that the recent heavy marketing push from MS has been making a lot of us feel like MFC is not part of the MS product "portfolio" anymore. Here is why I say this: (1) In the past several months, there haven't been any serious article on MFC / ATL on the MS VC++ site. (2) No serious sessions / presentations on MFC in any of the recent MS sponsored conferences. (3) MS has stopped certification program on MFC programming (as if the industry doesn't need certified MFC programmers anymore). You may argue that all these are happening just because MS has to introduce their new baby (.NET) to the outside world, but I think otherwise. To me, their goal is to push MFC programmers to embrace C# (and hence .NET) by doing heavy marketing on C#/.NET and almost nothing on MFC / ATL. I call it conspiracy. What do you?
-
>> MFC IS NOT AN "ORPHANED" PRODUCT!!! Nick, I understand your sincerity when you make a statement like that. But what worries me is that the recent heavy marketing push from MS has been making a lot of us feel like MFC is not part of the MS product "portfolio" anymore. Here is why I say this: (1) In the past several months, there haven't been any serious article on MFC / ATL on the MS VC++ site. (2) No serious sessions / presentations on MFC in any of the recent MS sponsored conferences. (3) MS has stopped certification program on MFC programming (as if the industry doesn't need certified MFC programmers anymore). You may argue that all these are happening just because MS has to introduce their new baby (.NET) to the outside world, but I think otherwise. To me, their goal is to push MFC programmers to embrace C# (and hence .NET) by doing heavy marketing on C#/.NET and almost nothing on MFC / ATL. I call it conspiracy. What do you?
I have heard .net defined as "Microsoft's platform after Windows," and when you think about it, it makes a great deal of sense. This leads to the conclusion that it is crucial for Microsoft to move their key strategic investment, us, onto that new platform. It will take a long time for .net to really mature into a replacement for Windows, years at least. In the meantime applications need to be written and delivered, and the traditional tools will facilitate that. But you cannot deny the enevitable: We are the Cobol programmers of our time and if we want to play in the next round we have to embrace the new tools be they J2EE or .net.
-
I have heard .net defined as "Microsoft's platform after Windows," and when you think about it, it makes a great deal of sense. This leads to the conclusion that it is crucial for Microsoft to move their key strategic investment, us, onto that new platform. It will take a long time for .net to really mature into a replacement for Windows, years at least. In the meantime applications need to be written and delivered, and the traditional tools will facilitate that. But you cannot deny the enevitable: We are the Cobol programmers of our time and if we want to play in the next round we have to embrace the new tools be they J2EE or .net.
-
sky==up earth==down :) Really, what do you want to know?
Is that universal? i.e. does it apply down under? ;P D
-
Isn't it the developers who drive the product? In fact if M$ marketing folks get too dirty in removing MFC/ATL from its shows, they may as well risk a backfire (revolt?) from VC++ community. Oh, only time will tell what is gonna happen.
Maybe a revolt would be possible for C++ developers, but I doubt it would be for VB developers. C++ developers can take their skills easily to Java, or to C++ on other platforms, but the VB guys would have a much tougher time. Despite all this, I expect a revolt would be extremely unlikely. We have each made an excellent living in the world that Microsoft has provided and why would we not follow that forward into .net?
-
>> MFC IS NOT AN "ORPHANED" PRODUCT!!! Nick, I understand your sincerity when you make a statement like that. But what worries me is that the recent heavy marketing push from MS has been making a lot of us feel like MFC is not part of the MS product "portfolio" anymore. Here is why I say this: (1) In the past several months, there haven't been any serious article on MFC / ATL on the MS VC++ site. (2) No serious sessions / presentations on MFC in any of the recent MS sponsored conferences. (3) MS has stopped certification program on MFC programming (as if the industry doesn't need certified MFC programmers anymore). You may argue that all these are happening just because MS has to introduce their new baby (.NET) to the outside world, but I think otherwise. To me, their goal is to push MFC programmers to embrace C# (and hence .NET) by doing heavy marketing on C#/.NET and almost nothing on MFC / ATL. I call it conspiracy. What do you?
I agree in part to all three points you make. Here’s my take: 1) MFC and ATL are mature products for a mature platform and much has been written about them in the last three years (since the release of the 6.0 product). As we roll out the 7.0 versions of these products I suspect we'll see newer content addressing the new features. 2) This IS a problem we're aware of and actively working to correct. I'd happily accept anyone's input on desired topics and/or other ways we could help our partners improve their conferences. 3) I need to look into this further - It is NOT my understanding that we are halting certification of MFC. Rather the VS6 certification exams are being upgraded to encompass VS.NET (VS7 if you will). As for the statement "their goal is to push MFC programmers to embrace C#", this is not the case. C# is a language designed to expose .NET features in a manner that is comfortable to C++ developers. It is a language that is much more suited to RAD tools (than C++) and so for C++ developers C# is perhaps a better choice than VB when a RAD tool is desired. Anything you can do in C# can be done in C++. If I were to make a comparison, I would compare the .NET Framework to MFC, but even this is not a 1:1 comparison. Yes there is some overlap in functionality, but each is optimized for building different types of applications. MFC encapsulates strictly Windows concepts and provides design patterns suitable for that platform (e.g. doc / view). The .NET Framework focuses on Internet-style applications with their multiple concurrent users, distributed processing, and interface requirements. In my personal opinion, the C++ developer is actually the most privileged developer in this new world, with tools that can natively target both platforms. In fact, the 7.0 compiler enables the targeting of both native Windows and .NET within the same image. I wouldn't call this "conspiracy". I would call it limited resources. No matter how silly that may sound the fact is that like any other company MSFT can only focus on so much at one time. I'm here answering questions in this forum on my own time because I understand the feeling of unease that many of you have. Please realize there are some things I simply cannot address -- but I'm doing my best to be honest with you and help you understand what is changing and why.
-
sky==up earth==down :) Really, what do you want to know?
Wooo! Can we quote you on this one Nick? cheers, Chris Maunder
-
>> MFC IS NOT AN "ORPHANED" PRODUCT!!! Nick, I understand your sincerity when you make a statement like that. But what worries me is that the recent heavy marketing push from MS has been making a lot of us feel like MFC is not part of the MS product "portfolio" anymore. Here is why I say this: (1) In the past several months, there haven't been any serious article on MFC / ATL on the MS VC++ site. (2) No serious sessions / presentations on MFC in any of the recent MS sponsored conferences. (3) MS has stopped certification program on MFC programming (as if the industry doesn't need certified MFC programmers anymore). You may argue that all these are happening just because MS has to introduce their new baby (.NET) to the outside world, but I think otherwise. To me, their goal is to push MFC programmers to embrace C# (and hence .NET) by doing heavy marketing on C#/.NET and almost nothing on MFC / ATL. I call it conspiracy. What do you?
This is something I've raised with the MS guys and girls, and each time I complain about the focus on C# and the neglect of C++/MFC there is much wailing and gnashing of teeth. The whole marketing and awareness push for .NET started at PDC, and since C# was the sexy new thing it got all the limelight. Even COBOL and FORTRAN got more of a mention than MFC. The MS G>M realised that the message that was given out was not as balanced as it should be. They did themselves (and the MFC/ATL team in particular) a great disservice in not promoting all the cool new stuff (especially the under-the-hood rewrites that had done, and the way the compiler now worked with ATL more elequantly). If I was Walter Sullivan or Ronald Laeremans I'd would have thrown a hissy fit by now. C# is simply new news. Wait till JUMP gets on it feet (ba-boom, tish!) then all youn will hear for months is Java. If you guys want to hear about new MFC/ATL stuff in VS.NET then how about we do it the fun way - ie. reading the docs, playing with beta 1 or 2, and submitting articles! cheers, Chris Maunder
-
Mario, I'm the Product Manager for Visual C++ and Visual C#. As I've said, .NET is not a replacement for MFC. It is also not simply a "replacement" or an "improvement" of Visual Basic. .NET as a whole is a computing platform (and is a platform that supports multiple languages). Just as Windows is a platform for which we create desktop applications, .NET is a platform for which we create Internet-enabled applications. Platforms provide infrastructure to the applications they support - typically a run-time environment, a core set of programming interfaces, and services like security. Windows provides these things optimized for desktop applications and .NET provides them optimized for Internet applications. I hope this helps! Nick
Nick, After the .NET release, MSDN.MICROSOFT.COM is full of .NET articles and nothing about MFC/ATL...:(, at least ATL should be improved... Mario
-
LOL with agreement. MFC is Dead but "it is in the beta 1 of .net." is an Oxymoronic statement when you think about it, MFC is too big to replace in one swoop. >>> (the book is for 6.0 but why not use the newer version). Hey I find there is a lot of useful stuff in the MFC 4.2 + Books, But the IDE is di_ff_er_en_t. Regardz Colin Davies
Hmmm...I could not really care whether MFC lasts or not as I am just learning MFC (as a generic step to VC++, it is, of course part of the VC++ book I am using) but Oxymoronic? I think words are being put in my mouth I never said "MFC is Dead but 'it is in the beta 1 of .net.'" - I just stated the fact it was there (and I was using it). Lee ------ Lee J. Zuckett - MCSD Avanade, Inc.
-
sky==up earth==down :) Really, what do you want to know?
I thought Microsoft was working to re-define that standard as a core technology. This would be a companion product to the re-definition of long-standing beliefe that night=dark and day=light. Of course, Sun Microsystems learned the hard way that you can't just patent that big shiny ball in the center of our solar system, so Microsoft might find it a hard row to hoe to get these standards changed, but I wouldn't put it past them...
-
Maybe a revolt would be possible for C++ developers, but I doubt it would be for VB developers. C++ developers can take their skills easily to Java, or to C++ on other platforms, but the VB guys would have a much tougher time. Despite all this, I expect a revolt would be extremely unlikely. We have each made an excellent living in the world that Microsoft has provided and why would we not follow that forward into .net?
Because not all programs (or even a small percentage of them) need to be "web-enabled". Until security is dramatically improved (and becomes almost brainless in its implementation), I would NEVER recommend that someone consider net/web-enabling their application. Sure, .NET probably has its place, DDE/COM/COM+/ATL is probably a "good thing" (TM) in some/few cases, and C# may just well be a better Java than Java, but that doesn't mean that we have to drop everything and change paradigms simply because Microsoft has a hard-on about something they want to see implemented so that they can gain an even tighter death-grip on the industry. (What a great run-on sentence! :-) ). Developers (or more importantly, middle/upper management) should learn to temper their enthusiasm for new technology, and look at the big picture. Microsoft isn't actively trying to make our jobs as developers easier, and anyone that thinks so should stop reading this and re-plant their nose further up Bill Gates' butt. I guess I'm just tired of people trying to sell me on the latest and greatest and saying I can't live without it.
-
Because not all programs (or even a small percentage of them) need to be "web-enabled". Until security is dramatically improved (and becomes almost brainless in its implementation), I would NEVER recommend that someone consider net/web-enabling their application. Sure, .NET probably has its place, DDE/COM/COM+/ATL is probably a "good thing" (TM) in some/few cases, and C# may just well be a better Java than Java, but that doesn't mean that we have to drop everything and change paradigms simply because Microsoft has a hard-on about something they want to see implemented so that they can gain an even tighter death-grip on the industry. (What a great run-on sentence! :-) ). Developers (or more importantly, middle/upper management) should learn to temper their enthusiasm for new technology, and look at the big picture. Microsoft isn't actively trying to make our jobs as developers easier, and anyone that thinks so should stop reading this and re-plant their nose further up Bill Gates' butt. I guess I'm just tired of people trying to sell me on the latest and greatest and saying I can't live without it.
I just thought I'd add that if I have to learn something for a given task, I will, just like all of the rest of you. But I don't have the luxury of time to be using new technology simply for the sake of using the new technology, and I sure as hell won't force-feed a program with it if it's not necessary to the task at hand. Product schedules are shakey enough without having to back up and replace working code with the same stuff in a different language/framework.