3 ms·
We've also got a strong contingent of anti-MS ranters. I've been having to work in MFC recently for a client, and boy... If you ever needed a reminder why som
by aggieben 18y ago
We've also got a strong contingent of anti-MS ranters.
I've been having to work in MFC recently for a client, and boy...
If you ever needed a reminder why some people dislike C++ so much, just work with MFC. It's one of the worst bastardizations of C++ I've ever seen (of course, to be fair, one has to admit that much of the really sucky stuff in MFC was done before the C++ standards were very good, and long before the compilers caught up).
Writing C++ using std:: and boost:: and other libraries written in "Modern C++" is pure bliss compared to doing it the "Microsoft Way".
- kingkongrevenge 18y agoI suspect that a lot of the C++ bashing you see comes from A) Experience with Microsoft Tools; B) Experience with 90s era C++ code bases, often produced by teams "trained up" in it. Modern C++ done "the boost way" is a great language. I have rewritten perl prototypes in modern C++ with hardly any code expansion, but with huge performance and deployability gains.
- DanielBMarkham 18y agoI mean MS in terms of the entire corporation, ie, all that comes from MS is bad. Last time I wrote in MFC was about five years ago. As I recall, I got up to speed by reading a couple books which went over basic application design stuff in Win32. Didn't seem too bad to me -- I even did some COM stuff and some hooks and such. But like I said, that was a while ago. I wasn't a crazy fan or anything, but the tools did the work I wanted to do.
- aggieben 18y agoMy latest woes were in trying to take a program written in a Modern/Standard C++ style and build in some existing sources that were written for MFC. Talk about a black hole of tool-chain hell...
- DanielBMarkham 18y agoYa -- mixing complex hierarchical OO libraries and programming metaphors in one project? It does sound like a trip through the underworld.
- aggieben 18y agoBut see, that's the point - C++ is intended to be multi-paradigm, and MS made it one-dimensional. Stdlib and Boost both take advantage of multiple paradigms while the MFC is a framework prison whence there is no escape.
- DanielBMarkham 18y agoBut it's not OOP's fault, and to the degree that Microsoft had to release something early (in order to support their Win32 framework) and keep supporting it -- it's not their fault either. You can go with a lightweight (?!?!) framework around your API, a la MFC, or more of a true framework, like OWL. But in either case, comparing a what? 12-year old framework system with something more recent isn't exactly apples and apples. I'm not trying to make excuses but heck, the whole reason we grow new frameworks is because old ones get too bloated and brittle. Rock on with Boost, but don't compare apples and oranges. Maybe it's me, but professionals are supposed to know the hard-to-use crap and should be able to swim around in that stuff like a fish in water. Hey -- just my two cents. No matter how you cut it, C++ is a killer language when it comes to complexity -- and that's without the freaking frameworks!