This is how programmers make (4)-learn to fish instead of fish

Source: Internet
Author: User

The last time I shared with you, I already explained how to invest in technology. Today I want to talk about how to invest in the degree of thinking, instead of simply limiting it to a language that I can use, I often think about recruiting programmers in the department. The first factor I think is whether a programmer is suitable for this job. If I know that you are learning new things for your own development or better: You are simply interested, I will give this interviewer a high score in my mind, because he will devote time to his interest, his enthusiasm is the motivation for his future work. When I mention some uncommon words or non-mainstream technologies, the last thing I want to hear is: "Sorry, I don't think I have the chance to use it, so I didn't know it. "

A person's persistence in technology can inspire you and make you more passionate about your work. More importantly, edge technologies and methods allow you to expand your horizons and depth, talents like others will be better, more intelligent, and more creative. If you find that you lack passion for new technologies and things, you don't want to know what's going on. Sorry, I'm sorry to tell you. You may choose the wrong career. As a programmer, do not bite a language or technology. What we learn is phishing, rather than biting a fish (programming language ). All those who have read martial arts novels know that they generally have a lot of weapons. They only dance knives or make great moves. What we want to learn is the programmer's way of thinking. It is a successful internal approach, not a language.

If you have time, you may want to learn new languages. This language should be a little different from the commonly used language. If you are used to using Java or C #, It doesn't prevent you from learning Ruby or Perl. How do you feel about convenient and convenient object-oriented! You don't need to be an expert, but you can feel the difference between the two. You may have to change a new way of thinking to face the new language. Sometimes I often use a language to understand a new programming language. When I learned C ++, I basically didn't understand OOP, polymorphism, and encapsulation, at that time, I only knew the pascal Language. Later I saw that the commonly used override was not a polymorphism? Turn begin.. end into two parentheses. Isn't it the start and end? The language is actually the same. It is nothing more than making judgments, loops, and recursion. However, to learn to fish, please pay attention to the following three aspects:

 

1. lay a good foundation.
At least one language is required. Some common algorithms, syntaxes, math basics, and logical thinking abilities are required. Generally, martial arts experts will first learn internal skills. When the internal skills are refined to the extreme, you can learn external skills, but get twice the result with half the effort.

 

2. Pay attention to some concepts.
Each language has its own unique personality and technical differences. Some are data types, some are data type definitions, and some are logical symbols. Let's just look at one '='. Some languages are value assignment numbers, some languages are logical judgments, and several long-looking brothers ': =', '=' are worth noting.

 

3. Develop good programming habits
It is not difficult to get started with programming, but it is very important to keep learning after getting started, which is relatively long. During this period, you should develop some good programming habits. The quality of programming style greatly affects program quality. A good programming style can make the program structure clear and reasonable, and make the program code easy to maintain. Such as code indentation, consistency of variable command rules, and code comments. A new employee came to the company. Today, I helped him change the code. In front of him, I helped him adjust the indentation and optimize the redundant code. Although it only took a lot of time to make small moves, I hope my behavior can touch him and let him pay attention to such details, these are very helpful for his future growth, and our team needs to have a unified programming style and habits.

 

4. Charge yourself and learn more computer theories
I actually regret that I did not learn calculus well. Programming is a cognitive process that complies with "theory> practice> theory> Practice". Everyone can understand it. However, when you find it difficult to improve programming to a certain extent, we need to go back and learn some basic theories of computer science and mathematics. After learning this course, you will be able to solve many of the problems you have encountered before, which gives you a sense of openness. Therefore, in the process of learning programming, We need to continuously learn computer science theories such as data structures, algorithms, computer principles, compilation principles, operating system principles, and software engineering for application puzzles and problems. basic knowledge of mathematical theories, such as mathematical logic, algebra, graph theory, and discrete mathematics. I forgot the name of the graph theory textbook of the University when I talked with you about traversing the binary tree in the Development Group yesterday. It seems that it is really necessary to learn about it.

 

 

In this way, after continuous learning and practice, the programming level will be continuously improved to a new level. Linyuan Yu is better to get rid of the Internet. We want to become a fisherman instead of a fool.

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.