![]() |
|
Alan Feuer says in his "Preface" that MFC Programming is for proficient C++ programmers with minimal knowledge of Windows programming. For such an audience, the book is an easy way to gain many insights into the workings of MFC, while learning something about programming Windows applications. The wider audience, however, will probably be the opposite-- programmers with some proficiency applying the Win32 API functions to small projects, but wanting a relatively painless way to gain proficiency in C++ to be able to use MFC for more complex projects.
Readers having no familiarity at all with the Win32 API will need at least one other text to explain the details of the myriad of functions and to get some introduction to the use of the program development toolset (Developer Studio, Microsoft's integrated development environment, which is closely approximated by the other vendors). This additional detail is needed because compiler vendors no longer include hardcopy manuals and the "complete" online documentation is not always easy to use (as evidenced by the extensive bookstore shelfspace devoted to selling us reference manuals we formerly got for free).
Among the elementary topics Feuer covers are menus, dialogs, messages and their handling, standard controls and their modification, and the application framework (documents, frames, views, and templates, although the coverage of templates is too superficial to be of much use). Advanced topics covered include control bars (docking and hiding), scrolling views, splitting windows (with an example of limiting the size of the invalid rectangle), printing and previewing (scaling to fit). Extended examples include an address book, interactive hangman game, installation program, and browser; the Internet browser and the print example also demonstrate the use of worker threads for background processing.
MFC Programming was weak in some areas. For instance, there was insufficient commenting of source code; most of the examples in the text are broken into several source files on the accompanying CD-ROM (each with its own header), with no explanation of the logic behind this breakdown. Very few of the source files are referenced specifically in the text, so the reader must search through them individually for elaboration on the program fragments given in the text. No chart of the MFC hierarchy is provided.
There are lapses in editing: For example, I noticed seven pages in which declarations were messed up by a failure to leave a space between the type name and the variable name, and I found at least one incorrect figure reference. There are lapses in style as well: For instance, identical, or nearly identical, code fragments were repeated without any referencing between repetitions, so that you were sometimes distracted by a strong sense of deja vu.
There are over a dozen books covering approximately the same topics at the same level of sophistication, many of which add one or more of the following: More application code, ActiveX controls, extensive server/Internet examples, discussion of Developer Studio. Here is a short list of some of these books, all selling for approximately $50.00:
Advanced Visual C++, Second Edition, by Steve Holzner (M&T Books, 1997, $49.95, ISBN 1-558- 51565-8). This is the strongest book on building advanced example applications from a standard set of simple models, but the CD-ROM has source code only (i.e., does not include full text).
Developing Professional Applications for Windows 95 and NT Using MFC, by Marshall Brain and Lance Lovette (Prentice Hall, 1996, $49.95 ISBN 0-136-16343-2). The CD-ROM that accompanies this book contains the complete text in Acrobat format for easy searching, as well as the complete source code; the publisher promises free updates via Internet for each new version of Visual C++. A slightly cheaper version with a slightly different title does not have the complete text on the CD-ROM.
Inside Visual C++ Version 5, by David J. Kruglinski (Microsoft Press, 1997, $49.99, ISBN 1-572-31565-2).This is the more advanced of the two Microsoft books on the same subject.
MFC 4 Programming with Visual C++, by Michael Blaszczak (WROX Press, 1996, $49.95, ISBN 1-874- 41692-3). This book begins with a 70-page discussion of Developer Studio. The CD-ROM has an HTML version of the text, and the publisher promises to update the CD-ROM for each new version of Visual C++ at a cost of $18.00. For $10.00 more you get hardcover and a slightly different title.
Special Edition Using Visual C++ 5, by Kate Gregory and Mark Davidson (Que, 1995, $49.99, ISBN 0-789-70401-3). The CD-ROM included with this book has the full text in HTML, plus four books on related subjects from the same publisher.
Visual C++ 5 Unleashed, by Viktor Toth (Sams, 1997, $41.99, ISBN 0-672-31206-9). This book is runner-up in the sample code department. The CD- ROM has trial versions of some powerful tools, including NuMega BoundsChecker.
-- Peter Gottlieb
| Readability |
|
| Originality |
|
| Organization |
|
| Accuracy |
|
| Consistency |
|
| Depth |
|
| Timeliness |
|
| Editing |
|
| Design |
|
| Overall Value |
|
Explanation of ERCB rating scale: No stars = unacceptable, 1 Star = marginal, 2 Stars = average, 3 Stars = above average, 4 Stars = exceptional.