"Turn from Baidu a certain article" read a little feel it

Source: Internet
Author: User

①, you can write such a long description of the problem, you are very serious. ②, you have a strong sense of purpose, but you also want to have more specific goals, I can tell you how to find their own goals and routes and how to learn. ③, computer professional field a total of several general directions, more than 10 branch direction, and each branch direction has dozens of small direction, each direction of deep learning and proficiency to a certain degree of heat is not overnight, and is not completely connected to each other, But you should now choose a general direction and go deep in one of these small directions (why choose a specific branch direction so early?). Later said).       ④, here are listed several general directions of the computer (non-programming development Class I will not say): Basic direction: 1, microcontroller, embedded direction 2, network programming: Related to server programs, client development, script design. 3, System programming: Basic API Development, desktop development, System program development, service Program 4, Graphics: 3D, 2D, image recognition, face recognition 5, Audio: Speech recognition, audio decoding, audio software 6, compilation principle: Compiler design, script interpreter, virtual machine, non-natural language translation System 7, Application layer development: the use of high-level language to develop surface applications 8, security: Anti-engineering, virus, anti-virus, Trojan horse, anti-trojan, software crack, software shell additional direction: 8, Artificial intelligence: Genetic algorithm, neural network, gray system and so on 9, game design : A variety of game engine design and business logic design and other ⑤, the basic direction is you must choose, the additional direction is based on the basic direction of some icing on the cake, but no matter how you choose, the first thing must be in-depth rather than just understand it is enough (of course you do not seem very low), I put this out: data structure      : The basis of other theories below.      Operating System principle: understand the architecture and details of the operating system, you can later on multithreading, file management, memory management, command priority, etc. have a correct understanding and application.      Compiling principle: Can sublimate your understanding to the computer programming language, have an in-depth understanding to all sorts of compilation, explanation, compatibility, transplant, optimization, concurrency and parallel algorithm.      Database System principle: This is to enter the company will be, but also the basis of large-scale software development.      Software Engineering: This is the theoretical basis for you to be able to achieve the normal completion of a large project in a lack of experience.      Network technology: This is a must to learn, because there are almost no high probability of the software or platform is not related to the network. Mathematical words, the main is: discrete mathematics, linear algebra, advanced mathematics, computer graphics, probability theory above some of the basis is that you become a fusion ofA major branch of the cattle must learn (of course, not the theory, but the theory + Practice coding ability) ⑥ above are the big Foundation, to break through and deep learning, although the network era of computer professional knowledge explosion-style growth, but the above several basic grasp, will find, after what new theory and technology are based on these big Foundation , you can easily understand it. ⑦ Why do I start without telling you what to learn and how to order? Because those skills you have to master, you can solve the problem, but if you are interested, addicted to some of their own visible small-scale technology, then after graduation although can find a good job, salary may be high, but not to become a Daniel.      Now it's time to start talking about the order of study, although you don't recommend it, but I'm going to do it in a book. C language can write a lot of core and high-level things, not just small things, but from your code to see, incredibly use Goto, I am not saying you those programs use Goto what is not good, but must avoid using Goto,goto is the source of error, if you have what content to use Goto to write to,    It means you have a lot of room to improve your coding skills.      Your learning order should be: C: Make a Super Mario out and be able to read the text script to update the level.      C + +: Write a 2D graphics engine, encapsulate the details, implement object-oriented design and reusable design, and use some design patterns mentioned in the design pattern, so as to have a good grasp of C + +. MFC:MFC Technology Although the recent cold, but you can master it, to prove that your c++oo technology is skilled enough to prove that you master MFC is very simple, you just use MFC to make an antivirus engine is almost.     The recommended book has "in Good at MFC".      "Windows Programming": Unlike MFC, with the Windows Core SDK, which is the API, after this book, you can learn from the operating system level Win32 platform under the mechanism (in fact, Win64 and Win32 most mechanisms similar). C#:c# is a collection of some of the most advanced grammars in contemporary and cutting-edge computer science (although the execution efficiency has always been questioned), but after you finish learning C # and go deep, you can at least have a deeper understanding of computer language. How do you prove that you have a good C # study? Also very simple, write again a random game, such as Tetris. What if you prove yourself more?     Use it to write a network-to-peer battle game. (If you notice, you will find that my learning order is all along the language and some techniques, why?) Because these languages and technologies involve specific areas of technical and computer theory, such as "real" after learning C #, not only the learning of C #, but the multi-language paradigm to learnAgain, as well as the modern process development thinking (because it uses a lot of technology to make you once and for all)) above 5 steps are the basic steps, to be resolved without 1-2 years should not be enough. At the same time, to choose the direction you are interested in as soon as 3-5 years of long-term direction, do not worry about the premature choice of branch direction will have any loss, because many branches of the computer is connected, only you put the branch in depth, in order to truly understand the practical significance of many theories.      And once you have a strong advantage in a branch area (for example, you are the strongest in the company), you are a scarce person. About the general direction of the steps will not say, you are mainly to the basic steps I said to solve the first, at the same time to pay attention to the general direction of the theory of actual coding and development.

"Go from Baidu a certain article" read a little feel it.

Related Article

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.