1. What is a computer, what is a CPU, and how it works. (I won't tell you the answer to these and the concepts to be mentioned below. You can read the corresponding teaching materials. I will detail the teaching materials in the next section and remember to understand them !)
2. Concepts of machine language and micro-instruction set.
3. program concept.
4. The Assembly Language is a low-level language, but not a machine language.
5. What are the main advanced languages? (C, C ++, basic, Pascal, Fortran, C #, Java, etc.; if you are a hero in the Chinese software industry, you should also write a language, preferably not in English) 6. Compile the program and explain the concept and principle of the program. (Compilers are prepared by experts and experts)
7. html and XML are distinguished languages.
8. The PROLOG is manual.
9. Concepts and Principles of operating system OS. (Windows 98, windows, Windows NT, UNIX, Linux, and so on are all operating systems. There are also some real-time operating systems that are embedded into the OS. These are definitely experts)
10. In Windows programming, Windows API is called. (Many programmers in China only compile Windows programs and use VB. I suggest that at most these programmers are low-level coders. I call them coder)
11. VC ++, VB, BC, BCB, Delphi, and VF are only programming tools and environments, not programming languages.
12. Structure-oriented design concepts.
13. object-oriented concepts. (It's important, bro)
14. Concepts and Principles of software engineering. (If you want to be a boss, you need to study it well. The system analyst is a higher level than the coders, and the salary is also high.) 15. Database concept. (Be familiar with the names of some famous database systems and languages, such as orcle, SQL, DB2, and dybase)
16. Understand network concepts.
17. Understand multimedia concepts.
18. be familiar with and master the data structure and basic algorithms.
19. Is the requirement too high? Don't worry about it and make progress without knowing it. (Once you start learning, you will have a basic concept in a month. After two months, you will feel that you have a comprehensive basic knowledge; when you know how the program is going, it means you are getting started. There are also many people who have compiled the program for many years and haven't gotten started yet. You don't want to follow the steps on your own. Be confident and patient. How can it become a major event ?!)
(4) Recommended teaching materials
The recommended teaching materials are mainly for concepts. It is best to choose a famous school teaching book.
1. Computer composition principle (familiar)
2. Data Structure (master)
3. Operating System (understanding-> familiarity)
4. The C Language)
5. compilation principles (understanding Principles)
6. Assembly Language (understanding)
7. Computer Network (understanding)
8. Software Engineering (understanding)
9. Relational Database (familiar)
10. The C ++ Languege (master)
11. Object-oriented Design (master; combined with C ++ learning)
(5) Experience
1. A real programmer uses C ++ (said by an expert)
2. Compile the program;
3. Brainstorm;
4. Have a good programming style;
5. Read books, read good books, and read original books as much as possible! (I have repeatedly stressed this point. You must have a choice in reading books, insist on reading good books, classic books from famous books, and do not waste your practices on some shoddy books; and insist on Reading mass books)
6. Have your own learning plans;
7. Summarize your own experiences and lessons (prepare a notebook and record errors and experiences)
8. Do not be afraid to learn new things;
9. Have the idea of software engineering;
10. Be good at discovering problems and then look for answers;
11. Ask experts for advice. (open your mind until you become masters)
12. Communicate with peers (not good at communication)
13. Understand the essence of software and do not be confused by the ever-changing appearance;
14. You really need to learn to use programming languages and methods, not libraries, classes, or tools, I think it is far from enough)
15. wiodows programming is mainly used to learn Windows OS and Win32 APIs;
16. have time to learn about embedded development;
17. have time to learn about PDA software development;
18. Learn about the. NET Framework and C # language. Maybe it is your new parent;
19. Be patient and never be impetuous;
20. Add comments to the program and keep your old program;
21. The more you learn, the more you know, the closer you are to experts;
22. If you are free to visit csdn, you will have many confidants;
23. Be confident to become an excellent program;
(6) Recommendation of some good books
1. The C programming language (keinighan & Dennis Ritchie 1988)
2. The C ++ programming League (Bjarne stroustrup 1997)
3. Inside the C ++ Object Model (Lippmans)
4. Objective C ++ (same as above)
5. More effective C ++ (same as above)
6. predictional C ++
7. c ++ efficient Object-Oriented Programming
8. Design Patterns
9. Thinking in C ++
10. The standard C ++ Le (recommended)
11. The art of computer programming
12. Programming windows (Charles Petzold)
13. VC ++ 5.0 technology insider
14. Introduction to MFC
15. software requirements
16. Advanced windows
17. c ++ Primer
18. Win32 programmer Reference Manual
19. Using TCP/IP for Internet connection
20. essence of COM
(7) learning plan
I have decided on this learning plan and shared it with you for your reference. Let's make progress together. 1. Computer composition principles
2. Operating System
3. Data Structure
4. Assembly Language
5. c
6. C ++
7. VC technology insider
8. Programming windows
9. in-depth introduction to MFC
10. Advanced windows
11. Inside the C ++ Object Model
12. Thinking in C ++
13. Objective C ++
14. Database
15. Network
16. Embedded OS and Programming
17. Hardware Microcontroller
18. NET and C #
19. Software Engineering
20. UNIX and Linux