Four kings of MFC

Source: Internet
Author: User

Four kings of MFC

For the topic of MFC, there are four books that have been discussed on the "canghai Shuxun" edition, which are listed by me as the Four Kings. It seems that the good books in my mind are quite consistent with the market reaction.

---------------------------------------------------------------
I still remember that the unaccountable book reviews were the first time we met each other at the beginning of the Spring Festival four years ago (1993. Although not every month, messages are always kept intermittently. This column has been suspended for two times. It was suspended for three months for the first time and resumed in the spring of. It was stopped for 15 months for the second time, say hello again.

Taking a full year and three months of rest, the fatigue in writing is certainly one of the factors, and it is also because this column is directly and indirectly caused by the popularity of the vulgar people. When writing a letter, the reader said, "book reviews without responsibility are always considered as casual prose. Maybe you can consider writing some casual sketches, which will sell well. "Yes, I am thinking of writing the experience gained from this column into a" modern note 」. But I don't know how long I can get off my work and write my novels. I don't know what kind of publishing house is interested in the novels written by Hou Jie.

Tired and helpless. So I picked up the pen again, "no responsibility. I feel a little strange, but I am very proud to review the hundreds of emails written by readers over the past year. This month I am talking about visual C ++ and MFC. I have mentioned this question twice. First, it is very important, and the evolution process is also very fast and obvious. Second, there are some heavyweight books in this field, so I have to talk about it again.

In addition, I still have to emphasize that Hou Jie's expertise is limited. I can only watch books that are too far away from my fire. This column is used to inspire others and make the discussion of books a ethos. The books in brief column of Windows developer's journal (WDJ) was originally hosted by Ron Burk, where many readers interacted. I also hope this will happen here.

Yes

We often see on the pages related to BBS programming that many people confuse visual c ++ and C ++, and confuse visual c ++ with MFC. it is really necessary to clarify it. C ++ is a language and Visual C ++ is a product. It is a bit strange to say that we have opened a visual C ++ course in our school. The actual significance is that our school has opened a C ++ course, use Visual C ++ as the software development environment 』. It is also strange to say "I will write a visual C ++ program" because VISUAL C ++ is a C/C ++ compiler, in this integrated development environment, you can use C or C ++ to write DoS or Windows programs. For Windows programs, you can also use Windows API programming or MFC programming. Therefore, "I will write VISUAL C ++ programs" cannot express your true degree or meaning.

Visual c ++ is a set of C/C ++ compiler products that contain an integrated development environment (IDE ), that is, a large collection of tools such as Appwizard, classwizard, compiler, connector, and resource editor. You know, the real C ++ Program (instead of the C program in the C ++ coat) is built up by class. To save the burden on programmers, almost every compiler vendor provides a ready-made class library, allowing programmers to develop application software on this basis. MFC is such a set of category libraries. From an object-oriented perspective, MFC is a so-called application framework that is higher than the category library. On the PC, the other two products that share the same status as MFC are Borland's owl and IBM's openclass. the development environment that the former works with is Borland C ++, the latter works with Visual Age C ++. Other C ++ compiler manufacturers, such as Watcom, Symantec, and metaware, do not develop their own class libraries. They are authorizing Microsoft to use MFC, provides the source code, file inclusion, compatible compiler, and connector of MFC. Oh yes, they require that the authorization object be MFC, not owl. This shows the market share of MFC and owl.

-----------------------------------------------------
Product Name vendor application framework
-----------------------------------------------------
Visual c ++ Microsoft MFC
Borland C ++ Borland Owl (the latest version is also said to provide MFC)
Visualage C ++ IBM openclass
Symantec C ++ Symantec MFC
-----------------------------------------------------

● Canghai Shuxun

On the qingda BBS platform (fengqiao station, IP Address: 140.114.87.5), under the "Computer and Information" Area of the "Classification discussion area", there is a "canghai Shuxun" version, if you are interested in computer books, go and have a look. There are no (not yet) Articles similar to regular book reviews, many of which are post-reading experiences of readers, and the help letter from new readers (find a good book on a topic, who wants to sell books, who wants to buy books, etc ).

For the topic of MFC, there are four books that have been discussed in the canghai Shuxun edition, which are listed by me as the Four Kings. It seems that the good books in my mind are quite consistent with the market reaction. These four books have their own characteristics and are colorful and worth collecting.

● Four kings

A book can have the value of being added to favorites, but it is not easy to say anything. Zhu Jun, let's take a look at my reasons. The four kings are:

Inside visual c ++ 4.0

Among the four kings, this book is listed as the eldest brother. I have nothing to do with the King's "color art", and I have more ingredients to respect and respect the elders. It is the third edition of the same book, so it will be the software version number (the last version is inside visual c ++ 1.5) on the title of the book ). Another factor for the software version number on the title of the book is that when the book teaches us to develop programs, it is "tool-oriented" (tool-oriented ), you will see something like "press this button first, then fill in this small code, then select this item in the list, and then return to the right window... therefore, the visual C ++ version changes the content of the book.

This leads to a feature of this book in terms of Program Guidance: the use of tools accounts for a very important role. The tool is not easy to use, but it is very complicated (from the perspective of Visual C ++ fresh people, it may be... er... very messy ). Learning MFC and using it together with tools is a double burden for beginners. I once saw a letter on BBS complaining that although inside VISUAL C ++ is famous, he could not understand it at all. Well, I can fully understand that I am not the kind of person who forgets the pain after I understand it.

Reason for enrollment: The brand name is old and the sample program is rich in content. The OLE on the 220 page and the database on the 110 page are local exclusive and cannot be found elsewhere.

Programming Windows 95 with MFC

Ray Duncan (a well-respected veteran of Hou jie who seems to have faded out in recent years and has no new works) once said that this book is "The Petzold for MFC programming ", there is a trend of Petzold successors. The "Successor" message is displayed from the topic arrangement, or even from the book cover arrangement. However, its content proves that Ray Duncan's recommendation is not false.

---------------------------------------------------------------
Note: Charles Petzold is the author of "programming Windows 95. This book is a collection of SDK programming. This book has not been so sensational recently, and it is easy to understand. Because framework products such as MFC and OWL are constantly refined, rapid program development tools such as Delphi and C ++ Builder (RAD) the role of SDK programming is a bit like a combination of languages. But I tell you, learning it definitely makes you have different layers-not only at the programming level, but also at the job system level.
---------------------------------------------------------------

This book is very different from the book inside visual c ++ in terms of programming guidance. This book does not have any program completed with wizards (I think the author must have used the tool again, but it will be cleaned up again in the end ), so you won't see such strange symbols as // {And} //, as well as a bunch of # ifdef, # UNDEF, # endif. The impression that "code is written in one line by ourselves" may be helpful to the elimination of anxiety for beginners.

Reason for enrollment: the words are simple and clear. You can't see any special theme from the chapter directory, but it implies that there are many things in each section. Stable and stable. Although the discussion of the core concepts of MFC, such as document/view and message map, is just a few minutes away, it is doing well.

MFC Internals

This is the only book among the four kings that does not aim to teach MFC programming. It aims to mine the content of the Black Box job of MFC, so that readers can have a thorough understanding of the application framework. This understanding is actually helpful for the application of MFC, and it is not small.

This book mines the source codes of MFC to the most depth, and finally lists the Search Guide for the source codes of MFC in Appendix. Due to the explanation of the internal operating principles of MFC, there must be a long string of descriptions about "who calls and who calls. This narration is the best reference for sleeping pills. Fortunately, most of the authors can add a flowchart in a timely manner, which is of great help to readers in their consciousness recovery.

Reason: unique and unique. Although not for beginners or even intermediate students, all senior MFC programmers should try to read the books.

Dissecting MFC

This book is a clever mix of application (various application of MFC classes) and core (various wonderful mechanisms hidden in MFC. The first half of the article covers the basic technology of Win32, C ++, and MFC programs. The last half of the article takes the famous scribble Program (included in Visual C ++) as an example. It starts from the application, but ends with the core technology of the deep mining principle. There is no rich and brilliant application skills, focusing on the basis of the core technology of MFC.

Reason for enrollment: This book mines runtime class, dynamic creation, message mapping, command routing, persistence, and other topics to explain detailed pictures and provide a world-class experience. This book is the best choice for SDK programmers who want to enter the MFC field. Readers who have read inside visual c ++ and programming Windows 95 with MFC will take you to the next level, "knowing and knowing why 」.

Inside visual c ++ 4.0

---------------------------------------------------------------
Author: David J. kruglinski
Publishing Company: Microsoft Press
Publication date: early 1996
Page number: 29, 896
Price: USD 45.00. One disk is included.

Parti: Windows, Visual C ++, and application framework foundamentals
1. Microsoft Windows and Visual C ++
2. the MFC Application Framework

Partii: The MFC Library View class
3. Getting Started wwwith Appwizard-Hello world!
4. Basic event handling, mapping modes, and a scrolling View
5. The Graphics Device Interface (GDI), colors, and Fonts
6. The modal dialog and Windows 95 common controls
7. the modeless dialog and Windows 95 common dialogs
8. Using OLE controls (ocxs)
9. Win32 Memory Management
10. bitmaps
11. Windows Message Processing and multithreaded programming

Partiii: The document-view architecture
12. menus, keyborad accelerators, the rich edit control, and property sheets
13. toolbars and status bars
14. A reusable frame window base class
15. Separating the document from its view
16. Reading and Writing documents-SDI
17. Reading and Writing documents-MDI
18. Printing and print preview
19. Splitter Windows and multiple views
20. Context-senssitive help
21. Dynamic Link Libraries (DLLs)
22. MFC programs without document or view classes

Partiv: Ole
23. The OLE Component Object Model (COM)
24. OLE Automation
25. Ole uniform data transfer-clipboard transfer and drag and drop
26. Ole structure storage
27. Ole embedded servers and containers

Partiv: Database Management
28. Database Management with Microsoft ODBC
29. Database Management with Microsoft Data Access Object (DAO)
Appendix A: a crash course in the C ++ Language
Appendix B: Message map functions in MFC
Appendix C: MFC Library runtime class identification and dynamic object Creation
---------------------------------------------------------------
Since the rise of application framework, in addition to raw API programming, Windows programmers have found a new way. MFC is a well-known product with pure lineage. It is naturally more powerful than other application framework products, so it has more books than other products of the same level.

It wasn't long before the crowd started, and the real good stuff soon began to crash. Inside visual c ++ is the first to qualify. This book is now the third edition. The first two editions are respectively for MFC 2.0 (Visual C ++ 1.0) and MFC 2.5 (Visual C ++ 1.5. This book and programming windows have been mentioned in comments, called the Petzold book in MFC/C ++ (it sounds like a Rolls-Royce in the table industry, Rolex in the car industry ). Kruglinski himself, in order to get stuck in this honorable position, even "on a snowy evening a few years ago, venture into the East Village in New York and visit the Windows Master Charles Petzold, ask him about the idea of writing programming windows... (For more information, see the introduction section in this book ).

Kruglinski did not hide his love for MFC. He said it was a software development environment he had waited for ten years. How long has PC history been around for ten years? However, it is true that the integrated environment of MFC and Visual C ++ is powerful. This book is divided into four parts. The first article introduces the concept of application framework and various tool components of the Visual C ++ integrated environment. The second article really enters the MFC program design. It cannot start from "Hello World", and focuses on Windows display (that is, the use of cview ). The author tries to use C ++ and MFC to complete some simple functions, such as simple drawing, graphic scrolling, glyph output, universal dialog box and universal control components, and OCX usage.

The third article truly enters the core of MFC, that is, the document-view architecture, which is also the biggest characteristic of the so-called application framework. When you learn how to use a document and connect it to the view, you will be surprised how easy it is to add the file action and print table action (including the preview function) of the document. This chapter includes fascinating UI components such as Tool Columns, status columns, split windows, help systems, and attribute dialogs, topics such as SDI, MDI, printing, pre-view, and dynamic link library.

Chapter 5 of Article 4 is all about Ole. Unlike General books, this article is a tough plug-in for OLE, which covers COM (Component Object Model), OLE Automation, uniform data transfer, structured storage, embedded servers and containers.

The fifth article is about database management. This chapter describes ODBC (Open Database Connectivity) and Dao (data access objects ).

A reader on the Internet complained that although the book was famous, he could not understand it at all. Oh, everything is unexpected. At the beginning, the author took care of the formal practice of using Appwizard to generate code, using classwizard to rewrite a virtual function, intercept messages, and write a message processing regular expression. People who have just started learning windows programming, or even have SDK experience but have no object-oriented experience, are confused. Yes, learning MFC (or other application framework) requires a lot of basics. This includes the basics of C ++ language, Windows operating system, and object-oriented programming concepts.

Latest news: the fifth version of this book has been announced, and the publication date on the bibliography is 97 years old month. With my understanding of Microsoft press's publishing Progress, we may have to wait. The new book is not intended for Visual C ++ 5.0, but still centered on the architecture of MFC 4.x. However, it adds a lot of network technologies, such as basic TCP/IP, WinSock programming for clients and servers, MFC wininet, docobjects and ActiveX controls.

Programming Windows 95 with MFC

---------------------------------------------------------------
Author: Jeff prosise
Publishing Company: Microsoft Press
Publication date: Second quarter 1996
Page number: 14, 998
Price: USD 49.95. One disk is included.

Parti: MFC Basics
1. Hello, MFC
2. Drawing in a window
3. the mouse and the keyboard
4. Menus
5. Controls
6. Dialog Boxes and property sheets
7. timers and idle Processing
Partii: The document/view architecture
8. Documents, views, and Single Document Interface
9. Multiple documents and multiple views
10. Printing and print previewing
11. toolbars, status bars, and versionable Schemas
Partiii: Advanced topics
12. bitmaps, palettes, and regions
13. The common controls
14. threads and thread synchronization
---------------------------------------------------------------
The greatest dream of every MFC book author is that his work is known as the Petzold book in C ++ 」. Some people visit Petzold, and some people say a few words out of the old king. Old King Ray Duncan said: "Jeff prosise has written the definitive introduction to Widnows software development in the era of 32 bits and application frameworks. This book is The Petzold for MFC programming ". This passage is regarded as the main word of advertisement in this book. Interestingly, Petzold himself has never said anything even though Wanfang strives for it. Maybe he wants to say "I'll write this MFC classic by myself.

Does this book support successors? Yes! Compared with inside visual c ++, this book takes more care of the low-level part, and the program details are very complete. Don't get me wrong. I don't mean that it is a book (Note) that expresses five sentences in ten sentences ), I mean, it has dug into various technical topics, and it is very helpful.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.