How to become a great JavaScript programmer
When I was a young man, my hobbies crossed various irrelevant fields. I like mathematics as much as I love history. My goal is to be a great man who was as versatile as in the Renaissance-outstanding in many fields. This is an arduous task-I suddenly found myself facing the danger of "everything is okay, everything is loose.
I began to think about some areas, so that at least I could become a "proficient in some areas" person. So how can I focus on a certain field and learn a lot of knowledge required for software development?
This article mainly outlines the technologies and resources I have used to become an excellent JavaScript developer based on my 5 years of work experience.
Currently, most Web developers face a common problem: they must lead others in multiple different fields-from databases to backend architectures to front-end user interfaces, use good CSS knowledge to correct the user interface.
Read books
First, and most importantly, you must make efforts to stand out. Although you can also get a little bit of accumulation in your mind, for example, reading some blog articles from time to time, and to be honest, because the initial time and energy investment of this method is much lower, so it is simpler. This learning mode obviously takes more time than the special and deliberate learning process. The solution to this dilemma is also simple: read books.
Books are the ladder of human progress. Text is a tool that allows us to transmit knowledge from generation to generation in a concentrated form. To be a Web technical expert, you must learn when to stay away from the network itself. The network itself has confusing and distracting content, so the first suggestion I want to give is to read books on related topics.
For JavaScript, you can start with the following books: JavaScript the Good Parts is like the Bible in JavaScript. Although this book is a bit old, it is still the best starting point. JavaScript: the Definitive Guide is also required, although you may regard it as a reference book. JQuery founder John Resig's Secrets of the JavaScript Ninja is also worth noting. In addition, you can also read e-books, which is very convenient. Many online e-books are free of charge. In addition, although JavaScript Guide is not a book, it is highly trusted and favored by Mozilla developers.
Script library learning, usage, and reading
The next most important step is to understand the script library. Books teach you how to read a language and libraries teach you how to apply it. You need to do these two important things about the script Library: use them and read their source code.
For library usage, you need to know the following key libraries: jQuery, Backbone, underscore, and React, Angular, and Ember. This does not mean that you have to use these libraries, but any decent JavaScript developer should have at least some experience using these libraries ).
The second important thing to improve JavaScript skills is to read the source code of these libraries. I strongly recommend that you read the source code of Backbone and underscore because they are well written. Reading and understanding underscore can improve functional programming skills. Another library that is worth reading the source code is also recommended to me by other developers. It is mootols. I personally did not use mootools or read its source code .)
The remaining libraries, such as React and Ember, may be difficult to understand, but they are worth it. In addition, you should also look at the source code of other libraries to see how they build the code library and try to explore some new modes. Other well-known libraries that can use and read their source code include D3, highcharts, and moment. js.
Exercise and self-asked questions
The key step to become a good JavaScript developer is to practice a lot of exercises. Ideally, the focus of the exercise is not on DOM, but on language, so be sure to have a test tool that can run node. js. Perform a variety of trivial and extensive node. js exercises. The Research on coding methods has gone through different JavaScript methods: closure, prototype, extended array map, filter) and so on. While doing exercises, you must begin to form the basic idea of JavaScript in your mind.
One of my friends, Armagan, a good JavaScript programmer, is also a teacher who uses "Pro JavaScript Design Patterns" for lectures. Therefore, this book is worth reading.
While learning, you should try to answer some questions, such as: how to inherit the prototype? What is the definition of closure? How does the keyword meaning change? How to Use apply/bind/map/filter/call? Collect a series of common source points that JavaScript developers need to face and try to explain them in their own words. Interpreting these concepts in writing or orally to another person can greatly improve your skills. While practicing, try to think "what if that is the case ?" . For example, what does "this" mean if I use bind twice? How does jQuery ensure that the this keyword points to a jQuery object instead of a global object? How can this database complete certain functions ?" And so on. These are common questions you should always ask yourself.
Learning Standard
Next we need to understand the EcmaScript standard. Read the latest standard copy of EcmaScript. At the same time, you can also try to understand the upcoming functions in JavaScript, such as ES6 and ES7. Recently, new features such as promises, modules, generators, and comprehensions have emerged. You can read the standard and professional books, for example, Nicholas Zakas's Understanding EcmaScript 6 or Dr. Axel Rauschmayer's signing JS may be helpful. Learning standards from the main source and exploring new languages are the ways and methods to become professional.
Use Network Resources
I mentioned earlier that it is dangerous to use the network to understand the network, but now I want to propose that we can also use the network to obtain the best resources. Hacker News is a good source, but continuous tracking usually takes more time, because the proportion of actually useful information is very low. On the contrary, it is better to directly aim at weekly summaries such as JavaScript weekly. Over time, you will naturally learn which libraries or technologies are becoming more and more attractive. You can find influential JavaScript developers on Twitter. Other network resources include Blogs such as Toptal Blogs, Rebecca Murphey's blog, and Nicholas Zakas's blog.
Another important network resource is video conferencing and educational video. Speaking of conferences, the quality of the JSConf series is very high. As for educational videos, I strongly recommend Pluralsight because they have a Development Corps with experience in writing high-quality courses.
In short
- Reading, the essence of the book's own information.
- Learn about basic libraries, such as jQuery, underscore, and Backbone. Read the source code.
- Practice, try to explain common JavaScript concepts in your own words, such as inheritance. Give speeches and lectures on the above topics.
- Read the standard of the new version and use the latest languages.
- Use network resources to view summaries and blogs, as well as video conferences and educational videos.
Conclusion
Repeat the above steps and participate in a large number of projects to help you quickly improve your JavaScript skills. However, it is always important to remember that only paying will return and will be expected to become a professional. I think I am a good JavaScript programmer, but I still have a long way to go to become a professional. I still need to learn and master the knowledge and technology constantly.
Finally, I wish you a happy learning experience!
How to Become a Great JavaScript Developer