MFC's future
-
Please, excuse my ignorance: But what exactly in BCL that is not already in STL? "...Ability to type is not enough to become a Programmer. Unless you type in VB. But then again you have to type really fast..." Me
igor1960 wrote: But what exactly in BCL that is not already in STL? I havent done any STL but I guess STL does not have Regular Expressions, Networking classes (the BCL has some very high level abstractions for handling HTTP, FTP etc), Imaging, ADO classes, Crypto classes, System diag classes, a speech library (text 2 speech and reverse) and many more that I dont remember as of now. Nish
"I'm a bit bored at the moment so I'm thinking about writing a new programming language" - Colin Davies My book :- Summer Love and Some more Cricket [New Win] Review by Shog9 Click here for review[NW]
-
As someone familiar with MFC I just don't like the way .NET related code is so easily reversible. I do not know if it is the same way with managed C++, I hope not. I am using the first release of Visual Studio.NET have they released a forms editor that works for Visual C++ yet? Sorry this all goes back to my LONGGG time away from C++. Code4Food ---- "There is no try; only do or do not" -Yoda
Code4Food wrote: As someone familiar with MFC I just don't like the way .NET related code is so easily reversible. Yes me too, but we're going ahead full steam with a big commercial app that was formerly mfc / c++ to c# .net and I would not turn back to MFC / c++ to write a business application now for any money. Just too painfully slow. When I program in C# it's simply amazing how much you can get done in such a short period of time. As for reversible, we had that concern for our business apps about the first 10 seconds after we started using c# and one of the first things we did was tested building a ATL COM component that is fully accessible through interop from our c# code. It worked slick and flawlessly the first time with almost no quirkiness or difficulties at all. So all the stuff we don't want anyone to see is going into ATL components (license key, encryption etc) and the rest we'll just use a good quality obfuscator to keep the riff-raff out. We're not doing anything remotely patentable and we really don't care if anyone can see the majority of it or not as long as the critical stuff is wrapped inside COM components. ------------
-
igor1960 wrote: But what exactly in BCL that is not already in STL? I havent done any STL but I guess STL does not have Regular Expressions, Networking classes (the BCL has some very high level abstractions for handling HTTP, FTP etc), Imaging, ADO classes, Crypto classes, System diag classes, a speech library (text 2 speech and reverse) and many more that I dont remember as of now. Nish
"I'm a bit bored at the moment so I'm thinking about writing a new programming language" - Colin Davies My book :- Summer Love and Some more Cricket [New Win] Review by Shog9 Click here for review[NW]
With an exception of Crypto/Imaging -- everything else looks like implemeted already either in STL/MFC -- majority looks like just wrappers to COM Objects (speech/ado/system diag)... But again for Crypto -- CryptoAPI... Imaging -- GDI++... "...Ability to type is not enough to become a Programmer. Unless you type in VB. But then again you have to type really fast..." Me
-
Microsoft .NET is a very perspective technology, but I think it could kill MFC. Not in near future, but some time later. I didn't read anything about this, I'm just want to hear your opinion about MFC's future.
MFC will become the equivalent of those old classes we used to use for "windowing" in dos programs within the next 7-10 years. There's too much legacy code to see it die rapidly, but I suspect that it's going to fade away. I'm fully into .net now and couldn't see any reason to MFC for business application development. Maybe little utilities, etc, but then again those are usually ideal console apps so who can say. The real kicker is when .net is standard on every PC. At that point who wouldn't use it for little utilities etc when it compiles to a tiny 5k program. I'm amazed when a fairly sophisticated business app compiles to only 100kb in total for .net. It's great that way. Either way, I don't think .net can be put in the "fad" category at this point, I had my doubts a year ago, but it's very slick, works well, makes sense from every aspect for working class programming of business apps. MFC is just loaded with too much crap that it has accumulated over the years from win 3 days to now and it's become so byzantine and archaic by modern standards that it just has to collapse eventually under it's own weight. ------------
-
Jim A. Johnson wrote: Desktop developers have no use for .NET. Uhm, I take it that you have never taken a proper look at the .NET BCL. If you had then you probably wouldn't be saying this Jim. Remember, there is nothing stopping you from continuing to use MFC while also taking advantage of the BCL. Nish
"I'm a bit bored at the moment so I'm thinking about writing a new programming language" - Colin Davies My book :- Summer Love and Some more Cricket [New Win] Review by Shog9 Click here for review[NW]
Don't bother Nish, it's like debating whether the Apple is better than the PC, it's a tool for the job sort of issue. That being said .net is so superior in so many ways that it's hard to imagine going back to MFC unless I feel like a trip down memory lane (and I don't ). ------------
-
MFC will probably chug along in the background for a few years with very little in the way of updates and then slowly disappear off the radar screen. It wont happen for a while yet as that would be seen as trying to force people to use dot net which Microsoft seem to be weary of trying to ram down peoples throats and the backlash would push more people into using linux etc. So MS will probably make the right noises to pacify the MFC die hards for next couple of years as there are so many businesses relying on the MFC code, while continuing to push .NET largely through developers and sites like this until there are a majority of new projects being written in .Net rather than MFC, then MFC will start to slip until you get to the point where they don't include it with the compilers anymore. That's the way I'd do it anyway pseudonym67 Neural Dot Net Articles 1-11 Start Here[^]
-
Tom Welch wrote: Didn't Nish get kicked out of the country for writing that? LOL I must say that's one of the funniest things anyone's said about the book in a while. Uhm I must discuss with Tom (Archer) whether we can use that as a marketing gimmick ;-) One of the co-authors getting kicked out of the country for writing about MFC :-) Nish
"I'm a bit bored at the moment so I'm thinking about writing a new programming language" - Colin Davies My book :- Summer Love and Some more Cricket [New Win] Review by Shog9 Click here for review[NW]
-
I think eventually, MFC will be relegated to legacy code only. What benefit is there to writing new code in MFC? If you want to write for Winows only, might as well take advantage of .NET. And if you want to write cross-platform, you can't use MFC anyway... you'll need wxWindows, VCF, Qt, etc., or program in Java. My own team has been more or less phasing out MFC. It is pretty rare for us to do any new development with MFC - mainly "throw-away" code. MFC will linger on for a while until people get the hang of the alternatives, though. "When a man sits with a pretty girl for an hour, it seems like a minute. But let him sit on a hot stove for a minute and it's longer than any hour. That's relativity." - Albert Einstein
-
MFC has far too large an established base for it to "vanish" in the near future. MFC has its quirks, as does every class library (.NET is chock full of idiosyncrocies and it's nearly brand new!), but it is a very mature, stable library. It also has a rich set of time-tested third party libraries that C#.NET lacks. An experienced developer can still put an GUI application together faster with MFC than with .NET and it will have more features users expect (.NET lacks so many GUI things it borders on the absurd.) (Speaking of missing features, I'm writing a little applet in C#.NET and am currently avoiding writing yet-another-comma-delimited-parser by writing this.)
Joe Woodbury wrote: An experienced developer can still put an GUI application together faster with MFC than with .NET Hmm..I'd have to disagree with you 100% there, but then again I guess it depends on the application. I've no need for MDI or SDI and pretty much never have so maybe that's what your referring to? ------------
-
The whole point is that, if .NET actually does kill MFC, then it probably just establishes the fact that .NET must have actually got to a stage where programmers find it much more powerful and easy to use than MFC ever was. The old must make way for the young. It's been like that since Adam first saw Eve without the leaves... Nish
"I'm a bit bored at the moment so I'm thinking about writing a new programming language" - Colin Davies My book :- Summer Love and Some more Cricket [New Win] Review by Shog9 Click here for review[NW]
Nishant S wrote: It's been like that since Adam first saw Eve without the leaves... :-D BW "In a world full of people, only some want to fly,Isn't that crazy?" - Seal
-
"Read the book that had the desparado author fleeing the country, one step ahead of the byte patrol" "Banned in Utah" "Shipped in plain brown wrapper for your discretion" ------------
John Cardinal wrote: desparado author fleeing the country :-D Nish
"I'm a bit bored at the moment so I'm thinking about writing a new programming language" - Colin Davies My book :- Summer Love and Some more Cricket [New Win] Review by Shog9 Click here for review[NW]
-
Jim A. Johnson wrote: Desktop developers have no use for .NET. Uhm, I take it that you have never taken a proper look at the .NET BCL. If you had then you probably wouldn't be saying this Jim. Remember, there is nothing stopping you from continuing to use MFC while also taking advantage of the BCL. Nish
"I'm a bit bored at the moment so I'm thinking about writing a new programming language" - Colin Davies My book :- Summer Love and Some more Cricket [New Win] Review by Shog9 Click here for review[NW]
Nishant S wrote: Uhm, I take it that you have never taken a proper look at the .NET BCL. If you had then you probably wouldn't be saying this Jim. Remember, there is nothing stopping you from continuing to use MFC while also taking advantage of the BCL. Well, no, I haven't. Interesting; I've heard of CLR, but not BCL. But, see, here's why desktop developers aren't interested in .NET: 1) It's geared primarily towards Web development. 2) It requires a 10 meg+ DLL. 3) It's not geared towards performance: it's geared towards Jave-like performance, via C#. No, I can't work on .NET while working on MFC apps. Why? No time to learn! Writing good code takes time. Even after 20 years in this biz, the last 12 doing C++ exclusively, I still have tons to learn about C++. Why waste time learning yet here another today, gone tomorrow Microsoft technology?
-
With an exception of Crypto/Imaging -- everything else looks like implemeted already either in STL/MFC -- majority looks like just wrappers to COM Objects (speech/ado/system diag)... But again for Crypto -- CryptoAPI... Imaging -- GDI++... "...Ability to type is not enough to become a Programmer. Unless you type in VB. But then again you have to type really fast..." Me
igor1960 wrote: looks like just wrappers to COM Objects Yup, the BCL provides classes that wrap the various COM objects and the Win32 API. So why not use the classes? Nish
"I'm a bit bored at the moment so I'm thinking about writing a new programming language" - Colin Davies My book :- Summer Love and Some more Cricket [New Win] Review by Shog9 Click here for review[NW]
-
Nothng that can replace MFC yet exists. Desktop developers have no use for .NET. Apparently a large number of programmers refuse to upgrade to VS.NET becasue of its bizarre interface; I wish I could go back. As long as Windows is around, MFC will be the dominant programming library.
Jim A. Johnson wrote: Desktop developers have no use for .NET. :rolleyes: :confused: I'm doing some desktop apps in .NET and really liking the ease and power available in .NET. Only thing is, there aren't as many controls for .NET as I'd like to see. (Don't worry, we're fixing that. ;) )
"Blessed are the peacemakers, for they shall be called sons of God." - Jesus
"You must be the change you wish to see in the world." - Mahatma Gandhi -
Nishant S wrote: Uhm, I take it that you have never taken a proper look at the .NET BCL. If you had then you probably wouldn't be saying this Jim. Remember, there is nothing stopping you from continuing to use MFC while also taking advantage of the BCL. Well, no, I haven't. Interesting; I've heard of CLR, but not BCL. But, see, here's why desktop developers aren't interested in .NET: 1) It's geared primarily towards Web development. 2) It requires a 10 meg+ DLL. 3) It's not geared towards performance: it's geared towards Jave-like performance, via C#. No, I can't work on .NET while working on MFC apps. Why? No time to learn! Writing good code takes time. Even after 20 years in this biz, the last 12 doing C++ exclusively, I still have tons to learn about C++. Why waste time learning yet here another today, gone tomorrow Microsoft technology?
Jim A. Johnson wrote: Well, no, I haven't. Interesting; I've heard of CLR, but not BCL. Base Class Library (the huge collection of .NET framework classes) Jim A. Johnson wrote: 1) It's geared primarily towards Web development. :confused: Not really. There are so many useful classes that have nothing to do with web at all. Jim A. Johnson wrote: 2) It requires a 10 meg+ DLL. Future versions of Windows will have it by default. Jim A. Johnson wrote: 3) It's not geared towards performance: it's geared towards Jave-like performance, via C#. C# is just a language/compiler for the .NET framework. .NET might be slower than native code but in business apps when has performance been the primary issue? There are far too many other bottlenecks like network speed, data base access etc. that the slowness due to a JIT compilation wont even be noticeable. It's not as if anyone is gonna write a high speed compiler using managed code Jim A. Johnson wrote: No, I can't work on .NET while working on MFC apps. Why? No time to learn! Writing good code takes time Uhm, Tom Archer and I are writing a book targetted at MFC devs that talks about how to integrate MFC and .NET without givin up on MFC :-) Nish
"I'm a bit bored at the moment so I'm thinking about writing a new programming language" - Colin Davies My book :- Summer Love and Some more Cricket [New Win] Review by Shog9 Click here for review[NW]
-
MFC is dead. Microsoft want you to use C#, so VB and MFC will become poor second cousins to C# sooner rather than later. Christian NO MATTER HOW MUCH BIG IS THE WORD SIZE ,THE DATA MUCT BE TRANSPORTED INTO THE CPU. - Vinod Sharma Anonymous wrote: OK. I read a c++ book. Or...a bit of it anyway. I'm sick of that evil looking console window. I think you are a good candidate for Visual Basic. - Nemanja Trifunovic
Christian Graus wrote: so VB and MFC will become poor second cousins to C# sooner rather than later. Unless some of the existing MFC devs give up their egos ;-) and decide to use Managed C++ to mix MFC with the .NET BCL :-) Nish
"I'm a bit bored at the moment so I'm thinking about writing a new programming language" - Colin Davies My book :- Summer Love and Some more Cricket [New Win] Review by Shog9 Click here for review[NW]
-
Nishant S wrote: Uhm, I take it that you have never taken a proper look at the .NET BCL. If you had then you probably wouldn't be saying this Jim. Remember, there is nothing stopping you from continuing to use MFC while also taking advantage of the BCL. Well, no, I haven't. Interesting; I've heard of CLR, but not BCL. But, see, here's why desktop developers aren't interested in .NET: 1) It's geared primarily towards Web development. 2) It requires a 10 meg+ DLL. 3) It's not geared towards performance: it's geared towards Jave-like performance, via C#. No, I can't work on .NET while working on MFC apps. Why? No time to learn! Writing good code takes time. Even after 20 years in this biz, the last 12 doing C++ exclusively, I still have tons to learn about C++. Why waste time learning yet here another today, gone tomorrow Microsoft technology?
Jim A. Johnson wrote: It's geared primarily towards Web development. You'd be surprised. Yes, it has a lot for Web dev, but it also has excellent support for the desktop. Jim A. Johnson wrote: It requires a 10 meg+ DLL. That 10 meg+ DLL is partly the large BCL. Jim A. Johnson wrote: 3) It's not geared towards performance: it's geared towards Jave-like performance, via C#. That is a problem, but not too much of one. They're going to be working on optimizations in future releases. Jim A. Johnson wrote: No, I can't work on .NET while working on MFC apps. Why? No time to learn! Writing good code takes time. Even after 20 years in this biz, the last 12 doing C++ exclusively, I still have tons to learn about C++. If you like MFC, and don't have time to learn C#, that's fine - go ahead and use it. :) However, don't knock .NET if you don't know much about it. :| MFC is very good for desktop apps, and so is .NET.
"Blessed are the peacemakers, for they shall be called sons of God." - Jesus
"You must be the change you wish to see in the world." - Mahatma Gandhi -
igor1960 wrote: looks like just wrappers to COM Objects Yup, the BCL provides classes that wrap the various COM objects and the Win32 API. So why not use the classes? Nish
"I'm a bit bored at the moment so I'm thinking about writing a new programming language" - Colin Davies My book :- Summer Love and Some more Cricket [New Win] Review by Shog9 Click here for review[NW]
Sure, why not? If you are not concerned with memory footprint as well as .NET deployment is not an issue -- sure it can and probably should be used... I'm just against that crowd that already rendered MFC/ATL/COM as dead. Yes, sure CLR and only CLR is the bright future! LOL... "...Ability to type is not enough to become a Programmer. Unless you type in VB. But then again you have to type really fast..." Me
-
Sure, why not? If you are not concerned with memory footprint as well as .NET deployment is not an issue -- sure it can and probably should be used... I'm just against that crowd that already rendered MFC/ATL/COM as dead. Yes, sure CLR and only CLR is the bright future! LOL... "...Ability to type is not enough to become a Programmer. Unless you type in VB. But then again you have to type really fast..." Me
igor1960 wrote: If you are not concerned with memory footprint The .NET BCL was developed by people at MS just as they did develop MFC and ATL. What makes you think that they must have got it wrong this time? If the BCL has a memory footprint then so does MFC. igor1960 wrote: MFC/ATL/COM as dead Not dead, but surely dying a slow relaxed death. igor1960 wrote: sure CLR and only CLR is the bright future! LOL... While you were probably joking, it is ironic that there is a lot of truth in your joke. The future might not be the CLR as we know it now, but for sure one of it's great grand children will rule the development world a few decades from now. Nish
"I'm a bit bored at the moment so I'm thinking about writing a new programming language" - Colin Davies My book :- Summer Love and Some more Cricket [New Win] Review by Shog9 Click here for review[NW]
-
igor1960 wrote: If you are not concerned with memory footprint The .NET BCL was developed by people at MS just as they did develop MFC and ATL. What makes you think that they must have got it wrong this time? If the BCL has a memory footprint then so does MFC. igor1960 wrote: MFC/ATL/COM as dead Not dead, but surely dying a slow relaxed death. igor1960 wrote: sure CLR and only CLR is the bright future! LOL... While you were probably joking, it is ironic that there is a lot of truth in your joke. The future might not be the CLR as we know it now, but for sure one of it's great grand children will rule the development world a few decades from now. Nish
"I'm a bit bored at the moment so I'm thinking about writing a new programming language" - Colin Davies My book :- Summer Love and Some more Cricket [New Win] Review by Shog9 Click here for review[NW]
The .NET BCL was developed by people at MS just as they did develop MFC and ATL. What makes you think that they must have got it wrong this time? If the BCL has a memory footprint then so does MFC. I'm confused here: I though BCL/FCL is part of .NET Framework and CLR will be loaded? Maybe we are talking about different things, but I meant memory footprint and other overhead... While you were probably joking, it is ironic that there is a lot of truth in your joke. The future might not be the CLR as we know it now, but for sure one of it's great grand children will rule the development world a few decades from now Sure, world is constant progress... "...Ability to type is not enough to become a Programmer. Unless you type in VB. But then again you have to type really fast..." Me