Schles (iamsor@sohu.com)
First of all, declare that I am not a master, that is, just poverty. Because the luck is very good, I bought a few good books. I almost didn't walk in the learning process. I haven't expected it. Now the general applet can get it. See those friends who are struggling because I don't know where to start, I hope my article can give them some help.
Learning is urgent, and I have learned VC, and I said that VC is difficult to get it. If you are hard, you may come over, but you will lack your back, you have to go back to make a basic knowledge. If the will is not strong, it is very likely to give up here, and leave a VC is hard to impress. In fact, as long as the step is a step, VC is also very simple. Here I talked here, if you are just a junior high school, then you should carefully think about it. First, limited to your knowledge and thinking, learning C language should have no problem, but learning VC is a considerable effort. Moreover, what you have learned now will definitely, so it is better to put energy in the study of algorithms, after all, these things will never have time.
I feel that if I go to the road, I get the VC, a summer vacation should be enough.
Although I learned that VC is not so difficult, I can't learn anything. Before studying VC, you must be sure, you are learning VC because of your love programming, not for showing off or other. Otherwise, I am afraid you can't persist in the day of victory.
For the first contact programming classmate, I suggest that it is best to learn Quick Basic (with DOS, it is the qbasic.exe), don't learn, know what is a floating point, and do ... loop For ... next, the most basic knowledge can be counted, and the points will be done. The key should understand how the computer performs commands, and there is a sense of programs. If you have confidence in yourself, you can learn C directly, you should not pay too much. But I feel that there is a lot of information for VB, and web programming is often used in VB Script, you will also use VB, so I understand some Basic pairs are also helpful. And if you just want a small question with QB than VC, VB is more convenient. (Looking for a personal teaching, you should get it.)
After that, I suggested finding the book of this early high school information (some strange things). These books explain the basic algorithms, but it is relatively popular, there is no highly mathematical knowledge, it is easy to understand. These things have a strict explanation in the data structural course, so you can wait for later learning. But I feel that I have written some small procedures at this stage, and some common algorithms are very good to exercise their thinking, which is good for future learning. I think, can be sorted, ask for an eight queen, count Hanno Tag, then know that deep, breadth is a good search.
If you already have some programming basic knowledge, you can naturally skip the above two steps.
After you have a certain understanding of programming, you should start entering C . Note, it is C instead of VC, the two are not a code at all! Don't buy VC to get started, you must not understand! C is a language, and the VC tutorial is to explain how to use the MFC class library, learn VC should be based on the full understanding of C .
I feel more than a lot of flowers and green, the book is worse than buying the C tutorial of this university (note: Don't buy the tutorial of the level test, that is the trial), most of the tutorials have repeatedly tempered, compare the system, very gold Will it be too expensive. Here I recommend a "C programming tutorial" published by Tsinghua University Press, the cover is red, the bottom is yellow, it looks very simple, the editor is money. This book is simply can't say, it is also cheap (39.5 yuan). This book not only tells you the grammar, but also tells you why you want to specify the grammar, after reading it, you will feel that many of the regulations are justified, don't worry, not only not boring, but there is a beautiful sense of beauty . There are still many problems that should be paid attention to when actually programming, very valuable. This book also has "experimental guidance", and "exercises", but people who have some programming experience should be a lot, so I didn't buy it. In addition to this book, I recommend buying a book about traditional C language. I want to focus on the following aspects: compiling pretreatment, useful use, bit operation, standard library function (preferably there is a more detailed list, " It's better to use it. C standard template is a good stuff, but it is not helpful for learning MFC because the MFC is too backward (^ _ ^), you can put it first, don't learn to get MFC, make decisions. Although I haven't learned, but I feel very good, and I represent a development direction. Although I have a hard work (that thing is almost a little C , it is simply in the new language), but master it makes the programming a lot.
After I finished C , I learned VC? Don't worry, first find this Win32 programming book, this time there is nothing to pay attention to, looks almost, cheaper, if there is an introduction to the VC integrated environment. Win32 programming refers to the Windows API programming. The MFC is a class library that encapsulates many API functions. It is convenient to use it, but if there is no some API programming foundation, do not understand the relevant concept, learn MFC. Very puzzled. Believe me, you will not feel that API programming is a waste of time. There are more than 2,000 API functions, and you must learn to die. In fact, you only need to know how to create a window, dialog, control, message loop, understand the meaning of the handle, it is better to learn more about GDI programming. The key to this stage is to understand how the Win32 program works, grasping the relationship between various windows. Because you should write a program directly with Win32 SDK, the key is to understand the overall structure, remember that several functions have nothing to do. You can check when the function is used. There should be a more comprehensive information on your hand. Chinese API functions are all seemingly for VB, but it should be no obstacles. In English, there is, quite comprehensive, more comprehensive than Chinese. I suggest quick to find Chinese data, there is a problem to read English. (I forgot my HTML version of Chinese API, which is downloaded from, but the bookstore is sold, white skin, very thick, very expensive. Who wants to contact me with I amsor@sohu.com)
For friends who want to learn game programming: From now on, you don't have to learn what mfc is, I believe me, that in addition to let your headache are all right. The game has been made using Win32 SDK. Now, you have to learn DirectX. I recommend the DirectDraw documentation (www.imagic3d.com), and some of the basic knowledge written in front of the old king is very suitable for entry, especially thanks to the hard work of the old king. I also bought a "DirectX 7 Speed Tutorial", the machinery industry publishing, the cover is red. In addition to the translation, it is good, and the introduction is quite comprehensive, and there are some game programming basics. If you want to save trouble, you can consider using the wind soul game library written in Yunfeng (www.codingnow.com means to Yunfeng's hard work). But I still recommend at least DirectX. Let's talk about it. Many friends complained that they couldn't find DirectX books. I told you that don't go to program books, go to multimedia making books, but also look great, round. Director .. Director .. DirectX !!! Know it, the people working in the bookstore are not good, I haven't discovered it every day, I was shocked. After discovering this secret, I found that there were a lot of books about DirectX, but the average person couldn't find it. Learn DirectX, you can start struggle, and the remaining problems will only accumulate experience. For friends who are the application software, I have made the foundation, and now the obstacles to the VC have been cleared. But still should be prepared, things will not be smooth. Just start, you have to face a bottleneck, a lot of closely related knowledge, so that you must understand a whole, but it is difficult to come. It can be said that learning VC is the most difficult thing to start. Some of the long programs that are similar to the first time you create a window, just even worse. Many people are here to be smashed by a big group, giving up learning. In fact, this is almost a major feature of Windows programming. You should experience it when you are programming in Win32, while DirectX and COM have similar issues. Remember, be sure to believe that after breaking this bottleneck, it is a sea vast sky, and there is a solid foundation you must be in the past.
My suggestion is, don't wait until I don't understand, I look down, but I don't seem to see what I have, I don't understand, I don't know how to look down, wait for a menu than the cat. When the dialog box, I went back and read it again. After a few times, I should probably understand the operation of the MFC program. Note: Here is a key, you must use your heart to experience the spirit of object-oriented programming, and strive to link your programs to your previous knowledge. Try understanding how the MFC is encapsulated by the comparison member function and the corresponding API function. For example, quite a few classes encapsulate the handle and omit the parameter, which is a very important feature. There are many macros in the MFC, it looks very strange, but you don't have to practice its implementation, just know how to use it, this is also important. Also, don't depend too much of ClassWizard, to analyze your own code, lazy, you can't really understand MFC.
Here I introduce a learning method, but learning the law varies from person to person, so it is necessary to determine according to the situation. At the beginning, what should the tutorial let what to do, make a menu, dialog box, and try to add controls than the cat and the cat. When you can do this, you can do this when you do this, starting to understand the MFC program. If you don't understand, you skip it. It's coming over again. If you feel the head, you will rest for two days, wait for awake again. It is best to find more articles introducing the MFC frame during this period. Note: Don't touch things about document / depending on the structure, otherwise you will be more big. Then you can try to write a timer, a small thing, a business card clip, familiar with the use of various controls. After breaking through the beginning bottleneck, I will learn more and easier, because you can accumulate knowledge, but don't worry. Soon, you have to start using the API function to complete some features, such as in the system tray plus icon, self-painted list box, etc. At this time, you will also experience the benefits of learning Win32 programming, people who have not learned it like this card case.
About the tutorial of VC is all over place, but the fish dragon is mixed, the market is so smoking, and the book to deceive the money is really a lot. Some books are very thick, of course, very good, very good for the old bird, but for beginners seem to have some waste of money, because most things in the things in MSDN are there, and beginners don't need. The old written book is generally good, but the translation level is a problem. If the translation is bad enough, you will be affected, and the price is not fed, I don't recommend buying beginners. There is still something fool book, the class of illustration, it seems to be an initiator, and sometimes it is lie, and you will not do anything else after reading. If you see a book that spends a lot of artificial graphics, a vivid image introduction how to draw, output text, don't buy! Dake money! (: -
Http://vcdynasty.yeah.net/) Download this MFC tutorial. Although it is an online tutorial, it is considerable. Not only is more comprehensive, and there is no nonsense (here the author's hard work). Just, it is a pity that there is no introduction to GDI, but also other books make supplements. When you get this tutorial, you should have entered the door, you can have targeted purchase books, don't worry, it is deceived. Also, the online magazine of the VC Knowledge Base (www.vckbase.com) is also very good, and it is very helpful to people who have just started. It is recommended to download. After some doors, all websites turn more, seeing a good article, pulls down, and it is good for improving the level.
A set of MSDN discs is essential at this time, nothing to find Chinese materials, even if you can find it, you will take time and money, you can only look hard in English. However, in my experience, as long as there is a high school level, plus the Jinshan word tyrant slippery, see that the professional article is still very easy. Also, beginners may not know where to find what they need, I will column here:
Win32 API: Platform SDK-> Reference-> Win32 Functions in Alpha OrderMFC Category Library Information: Visual C Documentation-> Reference-> Microsoft Fo ...
C / C language and standard library information: Visual C Documentation-> Reference-> C / C ...
Standard control: Standard controls are encapsulated by the MFC, you can refer to the corresponding class, such as the CEDIT class corresponding to the EDIT control.
ActiveX Controls in VC: Visual Basic Documentation -> Reference -> Control Reference (Unique Chinese Information, is the worst, not only for VB, there is a big difference with C , but also translated a mess, almost could not use it If you have a master, I know how to use English, please tell me, it is grateful)
At present, there is a history of MSDN CD on the market, and some things may have been over. If you want the latest information, you can go to Microsoft's website (of course to be full English). However, there seems reasonable to beginners.
After getting the VC, you have to learn anything with you, learn C Builder, VB, Dephi, Java what is a little difficult, feeling like a keyword is changed. Or you can go to COM, it is said that it is a hard bone (but it seems just getting difficult, because there is a previous experience, although I didn't touch it, it should be done. DirectX programming experience It should be some help).
Finally, I recommend that there is time to study more algorithms. The data structure is to see. Don't necessarily remember (talk back, you can't remember if you don't often use it), but at least you must know that there is something wrong. If you encounter the problem, you must know the side of it. In fact, the common chain and other structures and algorithms have been implemented in the C standard template, don't have to force, but some understandings are always good. As for discrete mathematics, linear algebra, for complex algorithms, it is necessary, where discrete mathematics is the basis of the data structure. However, I felt that as long as it is not too complex, I can solve it with experience (just like the Olympics, but I have not proved), and those things will not be forgotten. If you meet a problem, you can't help it. It's good to find a master, save time and effort ^ _ ^.
Below is some of the hetero-hetero-eighty problems I think, no provision, make up or look:
The English level does not have to be high, but at least there must be high school level, otherwise you are affected.
I don't know if I read the book, in fact, I can figure out that you can figure it out again. As long as you look more, comprehensive analysis, there should be no problem.
Now the world is not a book to use time, but the book can be learned. Don't try to catch, and what you want to use. In this way, learning is fast, remembering.
An error known - learning programming is memory: This is a very important thinking, which will make you exhausted. In fact, you have little need for anything. For various functions, statement, just know if there is something, I know how to find it, I will remember it. Key to learn programming ideas.
A small trick: Among the compiler can help you make a lot of busy. In the VC, when you enter a member symbol. Or ->, the program will automatically list the members of this class, and you only choose one. This saves a lot of memory burden. For example, you want to get the length of a CString class object, the corresponding method is definitely get, but getletternum is also getStrlength but you don't know, you can enter xxx.get, so you can find a getTextLength () from the list, not this What else can you, click on it? It can also be avoided. If you want to call the member function of this class, enter this->, you can view the list of members. For global functions, you can enter: This seems to be clear. Also, if there is no list, 80% is what you have made, such as variables are not defined, or wrong words, but maybe the VC's bug, rarely. For beginners, this is a good function. A principle of initial programming should follow: It is better than the cat, not understanding. The key is that many things you can't never me, such as the mobs in the MFC. Moreover, it is not much good for it, it is still not to take it, it will be used in it, and when there is a leisure man, I will slowly think. Try to pay more about how others are implemented, and do it. Sometimes some small problems also reflect a deep thought. For example, a variable is to be defined where, how to organize the structure. If you don't quite understand, you will first find someone else. Time will naturally understand, this is like playing chess, how is the old man?
Also, I don't think that beginners should put excessive energy on the work like Cool's toolbar, transparent, bubble-shaped window. Before you do this, do you ask yourself, your own procedure is equipped with these beautiful interfaces? Especially, don't dress up the interface when you just start start, so as not to get the interface, you have no enthusiasm. After all, it is much stronger than the outcome of the results. If you want to do it, you have to wait for the program subject to set up.
At the beginning of school, you should pay more attention to the articles of the program structure organization, which is very important. It is necessary to develop a good style from the beginning. Otherwise, when you decide to make a big program, you will find that you can't do it.
Programming is not technical, but physical activity: When learning is full of brains, it is really physical activity when it is available. True to do things, the most important thing is to have perseverance to finish. It is inevitable that will not be strong.
About the beginner is the problem of learning VC or the study of VB: I feel that I am very difficult to learn VC, but I don't want to be as difficult to master the learning method, and learn VC to profoundly lead the essence of objects. It has enhanced your thoughts, which is great to future development. Besides, if this difficulties can't overcome, it is difficult to have anything. So, even if you want to use VB, it still takes some time to see VC, at least it knows its approximate structure. From a long time, this is very good.
Question about learning C Builder or Visual C : Maybe VC is really not very good, but it will not be too bad. Information about VC is not known to how many times the C Builder. Especially for beginners, it is very important! More than the difference is not too much, learn one, and then learn another kind of thing too much.
Oh, I didn't expect so much. I have already declare that I just started to get started, everything above is my own feelings, I have to have errors, please ask the high finger. In addition, this is my first write article, plus my language is very bad, in fact, what is I think, you will join or take it. postscript
In fact, all things in this article are my personal learning experience, so it is inevitable that some mistakes are. Don't understand it, please understand :) I feel that the most important one of the programming is "Enlink", the standard of VC entry is not what you can do, but you have a spirit. From the surface, it is whether you can learn smoothly. As for how to "understand", I will not say it, it seems to have a big relationship with people. Anyway, I feel that I am more good at "enlightenment" (^ _ ^ face thickness). Anyway, more contacts are more. It is important to be determined that it is important to lay the basic work. Although I learned that VC time is not long, C is basically getting a week, but in fact, I have learned from elementary school. After the senior high school entrance examination, I also had some modeling impression on C and assembly and operating systems. The concept of pointer and other concepts have also been probably understood in learning call interrupt. So didn't spend more time after the senior high school entrance examination, I got C . After this later, the high school has been learning the game programming (in fact, because of the greed, most of the time is playing games rather than writing games ^ ^). In this process, the first problem I encountered is the first Win32 program. However, by analyzing every variable, plus the possibility of speculating its possible operating mode, ignoring some details, and can make a dialog in a few days later, and roughly understand the operation of the Win32 program.
When I got higher, I started to smash MFC (because my body is not good, I have to take the college entrance examination next year, so I am afraid that I have no time to come here, but I have learned MFC before this. However, because the fog water is not understood to C . Although this, those blurred awareness is still very helpful. When I spent a few days, I found that I found some of the MFC a little bit of alarm. (While choosing the dialog box is to bypass the document / view structure, it is relatively simple) After this, the tutorial has seen it again, and it feels more clear. Then download the magazine of the VC knowledge base to browse a few times (especially the FAQ section, there are many small but very important knowledge points), and repeat the knowledge of many zero zero scattered, it feels basically the door.
In my experience, many of the small knowledge points that are not supper, can have a great improvement of your understanding. So I suggest a monostthal article (even vb, dephi), it is best to look at it, after all, there are a lot of Windows programming, more understanding some are always good.
In addition, sometimes there is a problem, as long as you don't want to get around, you don't have to urgently ask other people, especially the basic problem (like how to draw), find more information, you may have a presentation in many places. Moreover, time often gives you an answer. I often want to shoot my mind for a while: It turns out! . This is a kind of exercise for yourself, saving others.
I don't know much about the purpose of learning VC. In fact, I will not engage in the software industry, it is likely that automation control is even going to be a technician (mainly considering that the competition in the software industry may be very fierce), so it may not be a lot, just I like it, and I feel that the learning process is a very good thinking exercise, now there is nothing else to do (the exam is gone or by the university), so I learned.
It also said a bunch of Rari Luo, let the master joke, I hope to help the novice. I will have the right to practice the language, I don't want to pay attention to the language of the college entrance examination next year.
Schlesi Iamsor@sohu.com