Four Books and five classics for Windows Programming

Source: Internet
Author: User

Content is organized on the Internet.

The so-called Win32 development means that Windows applications or system programs are directly developed using Win32 APIs at the C language level. Although there are not many people who use Win32 APIs to develop applications, a deep understanding of the program design principles in Windows is still the only way to become a Windows developer. The so-called Win32 is actually an API specification, which is the same as the UNIX System Programming Interface Standard POSIX. In terms of design, Win32 is definitely not concise and elegant. Therefore, it is relatively difficult to learn Win32 system programming. Win32 comes from Win16, and Win16 was originally designed in the middle and early stages of the 1980 s. When designing Win16, Microsoft was still a small company, but it should be said that its capabilities were still limited. At the same time, the main objective of Win16 is to build a GUI system on top of DOS, focusing on the GUI part in design, with little consideration in the field of system programming. When Win32 was designed, Microsoft's capabilities were enhanced and it was important to create Win32 as the first-class operating system API specification, but it had already carried the historical burden of win16. Therefore, the Win32 design is not as elegant as POSIX. Microsoft subsequently entered the COM and. Net times. Every progress had to carry on with the historical burden, making Microsoft's technical system more and more complex.

The complexity of Microsoft's technology is the biggest weakness in the competition between Microsoft and Java. For our programmers, whether you are learning and using the latest. NET technology or sticking to the com development model, to overcome the complexity of Microsoft technology, you must go back to Win32. What are the "four books and five classics" in the Win32 field? Let's say one by one:

1. Charles Petzold, "Windows Programming (version 5th) (Up and down)" Peking University Press

This is a well-known Win32 API programming classic, also known as the "Petzold book". Almost everyone who learns Win32 API Programming starts from this book. The advantage of this book is that it is easy to understand and understand the basic concepts and skills. At the same time, although this book is not small in length, there are not many inclusive things, basically focusing on GUI programming and conventional programming tasks, so we can give a very thorough explanation of many issues. Generally, when I read this book for the first time, I feel that the author has some wordy texts. However, in the future development, we will find that these arguments are valuable materials worth repeatedly investigating and chewing in actual work. This is the so-called Petzold style, which can be both tutorial and reference.

A few years ago, the people's post and telecommunications Publishing House published Charles Calvert's 21-day WTI Windows 95 programming (up and down). The book's positioning is similar to Petzold book, it is also well written, and its definition of control programming is even higher than that of "Petzold book ". Unfortunately, this book is completely covered by the light of Petzold book. Not only has there been no domestic version, but the original publisher has completely dispelled the idea of confrontation with the "Petzold book.

I am afraid there are few people who still use Win32 API to directly develop GUI, so this book is not as meaningful as it was in the past. To be more fair, the biggest significance of Petzold book is to serve as an entry material for Win32. Without its baptism, it is difficult to enter the classroom.

2. Jeffrey Richter, fourth edition of Windows core programming Press

The first three editions of this book are advanced windows, and the fourth edition is programming applications for Microsoft Windows. In the preface, I also spoke about the reason for renaming. However, in my opinion, this book is more appropriate for advanced windows. Although this book is about Win32 API, it is almost identical with Petzold book. The basic content is not mentioned at all, and the GUI part is also taken over. The book focuses on stress and system programming. When it comes to Win32 core objects, from processes to threads, from DLL to Seh, from hook to memory management, it can be said that it is not difficult to avoid difficulties, to face the difficulties, to show the most complex and subtle details in a complete manner, and equipped with a large number of well-prepared examples, the code quality is very high. Therefore, this book has become a Bible for Win32 system programming since its publication, author Jeff
Richter has become an absolute authority in Win32 programming. I cannot imagine learning Win32 core programming without reading this book. Unfortunately, the Chinese version of this book does not match the high level of the original book. It can be said that there are not many big mistakes, but many minor mistakes. If you want to study this book carefully, you can find the photocopies published by Peking University Press.

This book is a masterpiece of Richter and has laid the position of Richter's top technical writer in the world. I personally like reading Richter books very much, because his text is written to professionals, and he never pretends to be mentally retarded. At the same time, he is very considerate and meticulous, which is very suitable for my habits and appetite. So I usually have Richter books in a certain field, so I won't go to other people's books.

For some readers, Marshall brain's Win32: System Service 3/E (Chinese name: "Deep Learning: Win32 system service development and instance", "deep learning" series of e-Industry Press) and Johnson Hart's Win32 system programming 2/E (Chinese name "Win32 system programming-Windows 2000 Application Development Guide (second edition)", China Power Press) are good choices. The two books are not as in-depth as Richter, but the examples are just perfect. Brain has a wide range of books, and the examples are very enlightening. Hart books are most suitable for friends who switch from UNIX to Win32. I found that I liked Richter books when I was idle, but in practice I needed to learn solutions quickly. Instead, brain and Hart books are more helpful to me. Therefore, although these two books are not as necessary as Richter, they are also very practical supplements.

The Petzold book And Richter book constitute a series of consistent titles. Generally, Win32 learners are intensive and master the main ideas and technologies of these two books, it can be called a Win32 system development expert. If we talk about the weakness of these two books, there are two main aspects. One is that Win9x is used as a basic starting point in writing the two books. Therefore, the introduction of the new features of Win2000 platform is insufficient. Especially for the development of high-performance software on the Windows 2000 server, it is basically not involved, and many Win32-specific mechanisms are not covered. Therefore, if you want to take another level in Win32, consider Jeffrey
Another book by Richter.

3. Jeffrey Richter, programming server-side application for Microsoft Windows (photocopy) Peking University Press

Do you know the I/O completion port? Do you know how to maximize the capabilities of machines on multiple CPU servers? Do you know how to use Windows logging service? Do you know how to use WMI to develop server programs? Even if you are a Win32 developer, you may feel difficult about the above issues. With the development of general applications gradually moved to the rad platform such as Java,. net, or at least Delphi, the last corner of Win32's ability to fully exert its power is probably the design of high-performance programs on the server side. If you want to make some achievements in this field, Jeffrey Richter's book will be unreadable. This book is almost the only one in this field, and Jeffrey
Richter's strength ensures that the level of this book has reached a considerable level. Reading this book is a shocking pleasure. You will lament that Jeffrey Richter's understanding of the Windows system can reach such depth!

This book almost overlaps with the Petzold book and Windows core programming mentioned above. The content involved is advanced technology, especially the new technology of server software development that has emerged since Windows 2000. In concert with the first two books, a complete chain is formed from the Foundation to the experts. In today's industry, developers still use pure Win32 development programs, many of which are "Masters" at the top of the pyramid. If the main significance of Petzold book today lies in education, and the main significance of "Windows core programming" is to deepen your understanding of the system, then the knowledge presented in this book is actually the guy who eats. Therefore, this book is a rare classic for experts and programmers who wish to eventually become masters.

The following is for MFC:

In-depth introduction to MFC (second edition) Hou Jie

MFC windows programming (version 2nd) Jeff prosise

Visual c ++ technology insider (version 4th) David kruglinski

In-depth analysis of MFC George Shepherd

Visual c ++. Net (6th) David kruglinski

It seems that sun Xin's in-depth explanation of VC ++ is also very good, because it is very convenient to learn by yourself because we can download related videos online.

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.