Do you have any idea how this feels? When you get a book and you're ready to read it, you always want to see it in a few days, and you don't want to go ahead and look at the back. How many pages per day to measure your value today, rather than how much knowledge; read a book always feel empty head, look at the back forget the front ... Of course, you may also encounter a lot of trouble reading, and below I will talk about my reading some of the thinking.
First, let's assume that the book you're reading must be a classic, excellent book. If not, then quickly throw away, a good book is a good teacher, and a book of Slag simply killed people ...
Next I classify the computer class books broadly into three categories:
(1) Language books. such as C, Java, Python, etc.
(2) Algorithmic books. "Introduction to Algorithms", "Programming Zhu Ji Nanxiong", etc.
(3) A particular category of books. such as operating system, compiling principle, network, Linux kernel, server principle and so on need a lot of energy to thoroughly master the book.
Of course, this classification is very superficial, for different kinds of books, our reading strategy will be focused.
First of all, for the first encyclopedia. The trick is one word: practice.
As a novice, do not fall into the details of the language, some people learn the language of the way is to make people laugh and cry, such as he wants to learn Java, he took a Java programming thought hard to see, looked at the back to forget the front, the pain of their own, the last exclamation: Java is really difficult! (I've seen it for myself, not more than one or two, but also drunk). There are some people, from the Internet or somewhere to find some teaching video, and then sit on the side of the legs side of the seemingly "attentive" to see, halfway through the occasional QQ people have to talk a few words (dude, do you want to watch a movie?) )。 These two ways of learning look different, in essence, are the same, are a passive way to accept knowledge. This way and its inefficiency, remember: The code is knocked out, not seen or heard! Whether you are reading or watching video, in fact, it does not matter, the key is to do it yourself knock it out. When the book is finished or the video is finished, you should have a lot of code in your hand, and then you can hit the code in the back of your head, and your mind is left with code instead of text or sound. Speaking of which reminds me of our English education, the most effective way to learn English personally is to put yourself in an English environment or create an English environment for yourself, and then say it hard. In this way, in less than a few months, make sure your English is awesome! Instead of trying to memorize words or read grammar. (Well, don't spit in English O (∩_∩) o! )。
Next talk about how to read the algorithm book. Know-How: Understanding + use.
Learning algorithm is different from learning the language, the most important thing is not the memory, but understanding. about how to understand the algorithm that there is nothing to say, look at everyone's understanding and adhere to, of course, to find some easy to understand online information or with the students to discuss the algorithm is very helpful. Let's focus here on why we should emphasize application. Because the algorithm of this kind of things is more difficult to understand, more difficult to understand things are easier to forget, such as you finally spent a long time to understand a dynamic algorithm or KMP algorithm, and then you think yourself thoroughly mastered, and then throw in those months regardless of it. And then there's no more. Therefore, once the algorithm is understood, it is very important to use it in different scenarios. So how do you use it? For example, your algorithm book behind the problem, there are now many colleges and universities have very good ACM OJ, there are a lot of algorithmic design problems, these are very good resources. When you use algorithms that you already understand to solve algorithmic problems, the process itself will further enhance your understanding of the algorithm and strengthen your memory. For example, you may have forgotten this algorithm for some time, but when you think of the problem you solved, you recalled the algorithm. Because our brains are not always easy to remember those abstract concepts, but for those specific things remember relatively solid. In other words, the use of algorithms to solve problems is very time-consuming, sometimes a problem you may not be AC for half a day. So I suggest that students who are still reading, if you want to go to the road of it technology, or to learn the algorithm. It's definitely good for you! You may want to learn all the time after work!
Finally, we talk about the third book study.
The third kind of book is usually a few theoretical books, more difficult to digest, and in a short period of time can not see its value. For many programmers, the feeling is not used. But it can be said that how much understanding of this kind of book determines whether you are a siege lion or a procedural ape. Of course everyone has his own choice, not everyone wants to go a long way in technology, if you are the one who wants to be technically successful, then welcome to discuss it together. If not, then take a look at it. In view of the characteristics of this kind of books, I summed up my own method of reading-three times reading law. Yes! At least three times. For this kind of books, either do not read, read at least three times. In fact, in reality, there are a lot of people who have read the book is not very willing to read, whether it is technical books or other aspects of the book. This may be related to people to read more than utilitarian, that read the book to read is a waste of time, rather than to read a new book. If you ask a person why you want to read a book, he may tell you to learn new knowledge or to acquire new ideas. Indeed, the purpose is true, but often he ignores a simple truth: If a book is read only once, then you can only absorb 10% of the knowledge. If you read it again and again, third time ... The knowledge you absorb can multiply, and when you read it again, you have more than simply to absorb the knowledge of the book itself, you will form their own thinking, perhaps this is the ancients said the reading times, its righteousness from now! So, if a classic book is taken, you are only going to see it again, then still don't look,, pure waste of time! Now that a good book has to be read several times, the question is: how do I read this book? Is it from head to toe, or is there another way? Of course. Why I have to mention three times to read calligraphy, this is actually a tradeoff between input and output, who know how to see the better, but in reality it is often difficult for you to have enough time to look at it, this time you need to find the least possible to maximize the harvest of the method. So how do you do it three times in calligraphy? If you get a technical book
First times
Finish the book as soon as possible in a relatively short period of time. In the first time, do not fall into a specific point of knowledge, this time the main purpose is to grasp the important points of knowledge in each chapter, remember, is to grasp, not to understand thoroughly. This time the attention is fast, efficient. Don't take too long. And it is best to keep a record of the "results" after the first reading, as they are the skeleton of the whole book.
Twice
The second time to pay attention to is slow, understanding. The second time must be slow, as far as possible to understand the knowledge point, do not greedy fast, do not pay attention to progress. Remember, in this one: haste makes waste! Encounter really do not understand the point, you can put a put, and so see the back of the back to understand, or consult other people. Do not recommend the side to take notes, it is best to read each chapter or after each section, the book closed, and then in the brain to recall the parts you saw, especially the key points of knowledge, and then record it down, so more than simply note the efficiency of the notes is much higher. (Personal comparison recommended to write a blog.) Do not feel that level is not enough, sorry to write a blog. Remember, blogging is not just about giving people a look, it's more important to sort out the ideas you've learned about yourself, usually in a very efficient sort of way. In addition, beginners often feel that blogging is time-consuming, but believe me, if you really attentively in blogging, it will never disappoint you these time! Once this is done, you have a more complete understanding of the whole book. This time, you can go to see your own blog, do not have to worry about reading the third.
three times.
Usually, if you read the second time carefully, you can put it in first. The human brain still takes some time to digest, even subconsciously, and it can actually be annoying to read it several times in a short time. After a period of time (for example, to look at some other books and so on), you start to read the third again, believe this time you feel very relaxed (people tend to familiar with the knowledge of a sense of pleasure), this time you not only consolidate your knowledge before, and may even let you create new ideas, For example, when you have mastered the theoretical knowledge of the operating system almost, you may wonder how it works, and you will have the impulse to read the kernel source. Of course it's going to be a different realm! (When you study the source code and look at the theoretical books of the operating system, you can even know which ones are well written and what are the ones that have been written!) \ (^o^)/~). Finally, I would like to say that even for these theoretical very strong books, to really understand them, but also need hands-on practice, such as learning the operating system can try to see the source code, learn how to compile the principle can try to do a small compiler, learn the network principle can build network environment to deepen the understanding of the network and so on.
Borrow Lu You's famous: the paper on the end of the light, I know this matter to preach!
Of course, these are just my personal thoughts on reading, not necessarily right. Everyone has the right approach, welcome to discuss \ (^o^)/
How to read technical books