Macros

Chapter 22 - The Microsoft Foundation Class Library: Fundamentals

Visual C++ 6: The Complete Reference
Chris H. Pappas and William H. Murray, III
  Copyright 1998 The McGraw-Hill Companies

MFC Design Considerations
The Foundation Class library design team set rigorous design principles that had to be followed in the implementation of the MFC library. These principles and guidelines include the following:
  Allow the mixing of traditional function calls with the use of new class libraries.
  Balance power and efficiency in the design of class libraries.
  Make the transition from standard API function calls to the use of class libraries as simple as possible.
  Produce a class library that can migrate easily to evolving platforms, such as Windows 3.1 and 95 to Windows 98 and NT.
  Utilize the power of C++ without overwhelming the programmer.
The design team felt that good code design had to start with the MFC library itself. The C++ foundation classes are designed to be small in size and fast in execution time. Their simplicity makes them very easy to use, and their execution speed is close to the bulkier function libraries of C.
These classes were designed in a fashion that requires minimal relearning of function names for seasoned Windows programmers. Careful naming and designing of classes achieved this feature. As a matter of fact, Microsoft identifies this feature as the “single characteristic that sets the MFC apart from other class libraries…”
The MFC team also designed the Foundation Class library to allow a “mixed-mode” operation. That is, classes and traditional function calls can be intermixed in the same source code. Functions, such as SetCursor( ) and GetSystemMetrics( ) require direct calls, even when using the MFC.
Microsoft was also aware that class libraries should be usable. Some class libraries, provided earlier by other manufacturers, were designed with too high a level of abstraction. These “heavy classes,” as Microsoft called them, tended to produce applications that were large in size and slow in execution. The MFC library provides a reasonable level of abstraction while keeping code sizes small.
The development team designed the original MFC library to be dynamic rather than static. The dynamic architecture has allowed the classes to be scaled to the growing Windows 95, 98, and NT environments we now have.

Books24x7.com, Inc 2000 –  


Visual C++ 6(c) The Complete Reference
Visual Studio 6: The Complete Reference
ISBN: B00007FYGA
EAN: N/A
Year: 1998
Pages: 207

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net