Novice memorized code is said to be "stupid"? Liberal arts programmers teach you how to memorize code, and my mother no longer has to worry about my hair!

foreword

A few days ago, when I was having dinner with my colleagues in the company, I talked about this topic. He said that one of the fresh graduates he brought in was a not-so-intelligent Yazi. I asked him why he said that. He said that if he doesn't know how to solve new problems, he will only use dead code. Let him make a web page according to the customer's needs, he is coding the code he has memorized, and even flipping through the book! The project is delayed again and again~

In the detailed discussion, I learned that it is not that this person is not smart, but that his code is not very smart. In the final analysis, the sense of logical language is not enough, so I just memorize it by rote!

This is a common question! I am also a person who has done "reciting codes". Why do I memorize codes? Because I am from a liberal arts background-"Reciting is the basis of understanding". That's right, I used it to apply it! After working in Xinshou Village for a few months, I found that rote memorization is not useful at all, and I can't remember it. The underlying logic of arts and sciences is completely different, and programming is logical thinking.

Of course, this is not to say that you don’t need to memorize everything when learning programming. Some things still need to be memorized. For example, some classic and commonly used source codes still need to be memorized by force, just like memorizing classic ancient poems. If you read more books, articles will come out of your mouth naturally, and the accumulation of code is the same. When you accumulate enough code, you can write code smoothly enough, and your thinking will be much clearer.

Having said so much, in the final analysis, programming is a process of solving problems! Memorizing the code will only make you doubt your life! !

So how to solve the problem of not being able to remember the code when you are a beginner? Combined with my own experience, I would like to give you some suggestions, for reference! ( Disclaimer: Learning methods vary from person to person, so it is not suitable to apply mechanically! )

These memory methods must be based on clarifying its logic, don't memorize it by rote!


1. Memory method

1. Only remember the key points.

To learn programming, we don't need to remember all the codes, we only need to selectively remember the key points. Remember what is there and what I can do, not the details.

As an example, let's say you design an elevator dispatching system. You only need to hear that there is something called the elevator scheduling algorithm, and that it can realize the orderly scheduling of elevators, and you don't need to remember how to write code. When it's time to do it, just search for the specific implementation of the algorithm.

No one can remember all the codes, we have to learn to find the codes we need. Remember the ultimate tools "Google" and "Duniang" that old programmers often say! Me a few years ago: I can use goole, but not completely. It was later discovered that what matters is not the content of the search, but the way of searching. You must learn to make good use of search engines . In fact, if you want answers on the Internet, it depends on how you find them! Stop spending time on wheels that have already been built.

2. Scene memory method

This is to ask you to write more code and implement more small projects. The advantage of this is that you may forget the specific code and can't remember it for a while. However, you will feel as if you have written this code. At this time, your brain will spin rapidly, and adjust the time to the day you wrote this code, and then you will think of the code you wrote that day.

At the beginning, I also watched a lot of videos and learned technology, but I didn't implement it, and in the end it was all on paper. Later, I found another way to memorize the code in actual combat. If you want to learn programming well, you must do more practical exercises, which can help you better understand technology and deepen your impression. In addition, through practice, it can help you understand many boring theories. Combined with practical operation, it is absolutely memorable.

3. More output

More output? Many friends here will be surprised, they have not figured out that Dingmao is ugly, and they are going to mislead their children? In fact, it is not the case. While exporting, you will sort out your logic and ideas clearly, so that your knowledge points will be consolidated again.

Output here, we can choose to write a blog, create a personal official account, headline account, etc. The point is that every time you update an article, you absolutely know the knowledge points in this article and have a deep memory. Can't remember you hitting me! Of course, if you don’t want to run an account, you can also communicate with your friends and talk about your newly learned knowledge points on the way to dinner every day. This kind of continuous learning and continuous output should not feel so good!

4. Effect of external factors

External factors here include (motivation, pressure), especially pressure. In a state of high pressure, the attention is absolutely concentrated. What do you want to remember at this time? I still remember that in the first two months when I first joined the company, I went to work under pressure every day. No one can teach you how to type code. You have to keep learning and accumulating. I grew up very fast during that time, and my hair started to thin out at that time!

5. Daily review

Record work, here is not to say to write a diary, keep a running account! Instead, there is a plan and a goal to complete a project every day.

In fact, the projects I have learned and done are all worth cherishing. From the beginning of learning programming, every time I finish a project, I will review it, including ideas, implementation process, difficulties encountered or pitfalls I have stepped on, etc., write down some thoughts and insights, and archive them.

Many students throw away after finishing. Later, I don't know the code I wrote, and I curse at people when I look at the code I wrote! I usually add appropriate notes after reviewing today's tasks. When I see my review document in the future, maybe I can optimize it and have a better idea!

Speaking of pitfalls , you may not remember this project after many years , but you will remember the pitfalls you stepped on and the overtime classes because of these pitfalls! Making mistakes is a very important process of learning and improving programmer skills. Learning to troubleshoot and debug code is even more important. Here I strongly recommend you to solve the problem yourself. Don't be afraid of trouble, let alone break your code. When learning programming, you learn real skills by repeating it over and over again.

It's a slow process, but well worth it. Eventually, you will become more and more confident, and more and more new ideas will follow!


2. Auxiliary tools

1. Mind maps such as xmind and curtain

2. VS , Quote , Notepad and other editors are used to note things, suitable for programmers to take notes and write codes, easy to find!

3. With Youdao Cloud Notepad, it is very convenient to store various documents as attachments, and the synchronization is faster than evernote. http://note.youdao.com/ 

Summarize

I know some people will say, "I have never seen someone who learns programming and memorizes codes." In fact, you are constantly memorizing during the actual operation, but the way of memorizing is different. Here, I also resolutely resist "rote memorization", which cannot help you truly become a programmer. To add memory on the basis of conforming to the programming logic, this is the correct way to open!


If you have any better learning methods, you can communicate and share with everyone! I hope everyone can grow into an excellent programmer together!
There is also a full set of information suitable for beginners~
come and grow up with Xiaoyu!
① More than 2,000 Python e-books (mainstream and classic books should be available)
② Python standard library information (the most complete Chinese version)
③ Project source code (forty or fifty interesting and classic hand-practice projects and source code)
④ Basic introduction to Python , reptiles, web development, and big data analysis videos (suitable for beginners)
⑤ Python learning roadmap (say goodbye to unrefined learning)

 Follow [Python Engineering Lion] and reply to " Learning Gift Package " to get it!

 

Guess you like

Origin blog.csdn.net/Modeler_xiaoyu/article/details/118909688