Monday, October 20, 2014

Maybe this is why I am such a sloppy programmer....

C++ and MFC


TL;DR

C++:

“In 1989 C++ 2.0 was released followed by the updated second edition of The C++ Programming Language in 1991.[9] New features in 2.0 included multiple inheritance, abstract classes, static member functions, const member functions, and protected members. In 1990, The Annotated C++ Reference Manual was published. This work became the basis for the future standard. Late feature additions included templatesexceptionsnamespaces, new casts, and a boolean type.
In 2011, C++11 was released which added more features and enlarged the standard library further (compared to it in 1998), providing more facilities for C++ programmers to use, with more additions planned for 2014 and 2017.”


I remember taking a class on C++ using Bjarne Stroustrup’s book in 1992 or 1993. Since C++ was so new to industry, my professor didn't even really understand the class implementation of the language making the class quite nightmarish. This was also the last programming class I took in college. After graduating college, I didn't do any programming until coming to Corning in 1999, and that was just VBA.

MFC:

'Windows Forms seemed to me what MFC should have been'
All the early books used C, but then Petzold shifted to writing about C# and .NET. Was he comfortable with such a high level of abstraction?
“I started out with machine code and assembly language. I took to C very well. I kind of skipped over C++ and MFC. C++ always looked like an extraordinarily ugly language to me, and MFC was not a very well-designed object-oriented wrapper around the API. I thought there should be something better. My first experience of .NET was with C# and Windows Forms, and was extremely favourable. [sic] I liked C# sharp as a programming language, I liked .NET as a sturdy, extensive, runtime library, and Windows Forms seemed to me what MFC should have been.”



This is interesting since LabVIEW (sorry, yes, everything right now relates back to LV, I should diversify) seems to rely so heavily on, but is quite hamstrung by it.