Do you study literature or science? Programming may need romance, but it needs logic and rigor. Frankly speaking, I was bored until I had fun.
3. Do you have the enthusiasm to pursue new technology? Are you curious? Enthusiasm is absolutely the most important thing! Think about it. Is your personality suitable for being a programmer? )
Being a programmer is by no means a good job. You need to keep learning and thinking. You can't laugh secretly until you become the one who can guide others to learn to think, another group of idiots.
5. The future of programmers is very confused. But I think the key is still you! I hope you are an ambitious person, not just to make a living. Because the real fun lies in creation; If you can change the history of the software industry, it is a hero; Don't want to be Bill Gates, Dennis Ritchie and bjarne stroustrup, I'd say you didn't pursue it. There is a joke about the future of programmers. Maybe you haven't heard of it. You should listen to it. The excerpt is as follows:
A programmer was confused about his future, so he asked God.
"Almighty God, please tell me what my future will be like?"
God said, "My child, ask Lipman. The team of programmers he leads now may be the largest on the planet. "
So he asked lippman.
Lippmann said, "The future of programmers is to control programmers."
The programmer was dissatisfied with the future and asked God again.
"Almighty God, please tell me what my future will be like?"
God said, "My child, ask Gates. He is probably the person with the most property on earth now. "
So he asked Gates.
Gates said, "The future of programmers is to squeeze programmers."
The programmer was dissatisfied with the future and asked God again.
"Almighty God, please tell me what my future will be like?"
God said, "My child, ask the backstreet. His computer books are probably the books with the most readers in the world. "
So he went to ask Hou Jie.
Hou Jie said, "The future of programmers is to seduce programmers."
The programmer was dissatisfied with the future and asked God again.
"Almighty God, please tell me what my future will be like?"
God shook his head. "Oh, my child, you'd better stop being a programmer." )
6. Being a programmer is still fun. When you learn new knowledge, when you have new ideas, when you have new products, when you discuss your achievements with your bosom friends … I ask you, do you think these are fun? )
7. Being a programmer is neither easy nor difficult. Is everything difficult in the world? For ...; Not for ... Do you have determination and confidence? )
8. Do you really want to be a programmer? Is it your own idea?
9. Are you willing to spend money on books? Reading a good book is definitely the best shortcut to learning programming. You will say that computer books are really expensive now, and there is no way. Who let knowledge and technology be in people's heads and books? When you write a book, you can lower the price. Remember that many brothers have no money but want to buy books. Be willing to buy books, buy good books, bad books are better than not reading, it will not pay off. What books to buy can be consulted by experts or read Hou Jie's book reviews. Prepare a small notebook and record the names of the books you want to buy. Read them when you go to the bookstore. If they are good, buy them. Remember to read them. Don't buy it casually. ) 10, I tell you, the program is: any purposeful and anticipated action sequence, which is a kind of software.
1 1, programming is programming.
12, have you decided? If you decide to become a programmer, you can continue reading. Otherwise, you can continue to look for other ways out. )
(3) Basic knowledge and concepts that programmers should have.
1, what is the composition of the computer, what is the CPU, and what is the working principle. I won't tell you any answers to these and the concepts mentioned below. You can read the corresponding teaching materials. I will elaborate on textbooks in the next section. Remember that understanding is the most important thing! )
2. The concepts of machine language and microinstruction set.
3. The concept of program.
Assembly language is a low-level language, but it is not a machine language.
5. What are the advanced languages? (C, C++, Basic, Pascal, Fortran, C#, Java and so on; If you are a hero in China's software industry, you should also write a language, preferably without English. Compile the program and explain the concept and principle of the program. (Compilers are prepared by experts and experts)
7.HTML, XML and so on. It's a sign language.
8.Prolog is an artificial intelligence language.
9. The concept and principle of operating system. (Windows98, Windows2000, Windows NT, UNIX, Linux, etc. It's all OS, and some real-time OS is embedded in the OS. Whoever made this up is definitely an expert. )
10, Windows programming is the call of Windows API. Many domestic programmers only write windows programs and use VB. My suggestion is that these programmers are at most bottom coders, which I call coders. )
1 1, VC++, VB, BC, BCB, Delphi and VF are just programming tools and environments, not programming languages.
12, structure-oriented design concept.
13, the concept of object-oriented. Understand, brother, this thing is still very important.
14, the concept and principle of software engineering. If you want to be a boss, you need to study hard. The system analyst is one level higher than the coder, and his salary is also high.
15. The concept of database. Familiar with the names of some famous database systems and languages, such as Orcle, SQL, DB2, DyBase, etc.
16, understand the concept of network.
17, understand the concept of multimedia.
18, familiar with and master the data structure and basic algorithm.
19, is it too much to ask? Don't worry, take your time, progress is subtle. Once you start learning, you will have basic concepts in one month; After two months, you will feel that your basic knowledge is comprehensive; When you know what programming is all about, it means that you have got started. There are also many people who have been programming for many years and have not started yet. You don't want to follow in their footsteps Have confidence and patience. How can you achieve great things if you can't hold your breath? ! )
(D) Teaching material recommendation
-The recommended textbooks are mainly aimed at concepts, and it is best to choose the teaching books of famous schools.
1, principle of computer organization (familiar)
2. Data Structure (Master)
3. Operating system (understand-> Familiar with)
4. C Language (Master)
5. Compilation principle (understanding principle)
6. Assembly Language (Understanding)
7. Computer Network (Understanding)
8. Software Engineering (Understanding)
9. Relational database (familiar)
10, c++ language (master)
1 1, object-oriented design (master; Combined with C++ learning)
(5) Some experiences and understandings
1, real programmers use c++;+; +; (experts say)
2. Start programming;
3. Think with your head;
4. Good programming style;
5, reading, reading good books, try to read the original! I have repeatedly stressed this point, that reading should be selective, that we should insist on reading good books and classic works by famous writers, and that we should not waste our practice on some shoddy books; Insist on extensive reading)
6. Have your own study plan;
7. Summarize your own experience and lessons; (Prepare a notebook to record mistakes and experiences)
8. Don't be afraid to learn new things;
9. Have the concept of software engineering;
10, good at finding problems and then looking for answers;
1 1, seeking the best; Keep an open mind until you become a master.
Communication with peers; If you are not good at communication, you can't. )
13, understand the essence of software, and don't be confused by the ever-changing appearance;
14, what you really want to learn is programming languages and methods, not libraries, classes and tools; It's easy to learn to use those libraries, but I don't think it's enough just to know them.
15, learning Windows programming is mainly learning windows OS and win32 API;;
16, have time to understand embedded development;
17, have time to understand PDA software development;
Get to know it. NET framework and C# language may be your new parents.
19, be patient and don't be impetuous; 20. Annotate the program and keep your old program;
2 1. The more you learn, the more you know, and the closer you get to the experts.
22. Have time to visit CSDN, where you have many confidants;
23. Have the confidence to become an excellent program;
(6) the recommendation of some good books
1, C Language Programming (Keinighan & dennis ritchie 1988)
2. C++ Programming Language (bjarne stroustrup 1997)
3. Inside the C++ Object Model (Lippmann)
4. Effective C++ (same as above)
5. More effective C++ (same as above)
6. Excellent c++
7.C++ efficient object-oriented programming
8. Design mode
9. Thinking with C++
10, standard C++ Bible (generally recommended)
1 1, The Art of Computer Programming
12, Programming Window (Charles Pei zod)
13, VC++5.0 technical insider
14, "Using MFC in a Simple Way"
15, software requirements
16, Advanced Window
17, c++primer.
18, win32 programmer's reference manual
19, using TCP/IP to realize Internet interconnection.
20. On the Essence of COM
(7) study plan
This study plan was made by me personally, and I enjoyed it for your reference. Let's progress together. 1, principle of computer composition
2. Operating system
3. Data structure
4. Assembly language
5. "C"
6、《C++》
7, "VC Technology Insider"
8. Programming Window
9、“MFC”
10, Advanced Window
1 1, Inside the C++ Object Model
12, Thinking with C++
13, Effective C++
14, database
15, network
16, embedded operating system and programming
17, hardware microcontroller
18,.NET and C#
19, Software Engineering
20, UNIX and Linux