怎样成为一个伟大的 JavaScript 程序员

当前大多数Web开发人员面临着这样一个共同的问题:他们必须在多个不一样的领域领先于他人——从数据库到后端架构,到前端用户界面,再到使用良好的CSS知识修正用户界面。css

阅读书籍

首先,也是最重要的一点是,你必须付出努力才能脱颖而出。虽然你也能够在无意中得到点点滴滴的积累,例如,不时地阅读一些博客文章,并且老实说,由于这种方法最初的时间和精力的投入要求低得多,因此更简单。这样的学习模式显然比你专门和刻意的学习过程要花费更多的时间。关于这种窘境的解决方式也很简单:阅读书籍。html

书籍是人类进步的阶梯。文字是咱们让知识以浓缩的形式代代相传的工具。成为Web技术专家有一个要解决的问题是,你必须学会什么时候远离网络自己。网络自己就存在着让人混乱和分心的内容,因此我要给出的第一个建议是,要阅读相关主题的书籍。前端

对于JavaScript中,能够先从如下书籍开始:《JavaScript the Good Parts》就像是JavaScript中的《圣经》。虽然这本书已经有点古老了,但依然是最好的起始点。《JavaScript: the Definitive Guide》也是咱们必需的,虽然你可能会将它看成是参考书。 jQuery创始人John Resig的《Secrets of the JavaScript Ninja》也值得关注。此外,你还能够阅读电子书,很是方便,不少在线电子书仍是免费的。另外,JavaScript Guide虽然不是书,但深受Mozilla开发人员的信赖和青睐。vue

脚本库的学习,使用和阅读

接下来最重要的一个步骤是去了解脚本库。书籍教你如何读懂语言,库教你如何应用它。关于脚本库你须要作这两件重要的事情:使用它们,阅读它们的源代码。node

对于库的使用,须要了解如下几个重点的库:jQuery,Backbone,underscore以及React、 Angular和Ember之一。这并非说你必需要使用这些库,但任何像样的JavaScript开发人员至少应该有必定的使用这些库的经验(不管好坏)。webpack

提高JavaScript技能的第二件重要的事情是阅读这些库的源代码。我强烈建议阅读Backbone和underscore的源代码,由于它们写得很是优美。阅读和理解underscore能够提升函数式编程的技巧。另外一个值得阅读源代码,也是其余开发人员推荐给个人库是mootols(我我的并不使用mootools,也没有阅读过它的源代码。)程序员

剩下的库,如React和Ember等,理解起来可能很难,但很是值得。此外还应该浏览一下其余库的源代码,看看它们是如何构建代码库的,并尝试探索一些新的模式。其余著名的可以使用和阅读其源代码的库包括D三、highcharts和moment.js。web

本次给你们推荐一个免费的学习圈,里面归纳移动应用网站开发,css,html,webpack,vue node angular以及面试资源等。获取资料👈👈👈
对web开发技术感兴趣的同窗,:👉👉👉加入 👈👈👈,无论你是小白仍是大牛我都欢迎,还有大牛整理的一套高效率学习路线和教程与您免费分享,同时天天更新视频资料。面试

练习与自问问题

要成为一个好的JavaScript开发人员的关键步骤是练习,许许多多的练习。理想的状况是,练习的重点不在于DOM,而在于语言,因此必定要确保有一个能够运行node.js的测试工具。作各类琐碎又大量的node.js练习。研究编码招式,经历使用JavaScript的不一样方式:闭包,原型,扩展数组(map、filter)等。在作练习的同时,要开始在脑中造成JavaScript的基本思想。数据库

个人一个朋友,Armagan,一位优秀的JavaScript程序员,也是一个使用《Pro JavaScript Design Patterns》用于讲座的老师,因此这本书值得一阅。

在学习的同时,要试着回答一些问题,例如:原型如何继承工做?闭包的定义?关键字含义如何改变?如何使用apply/bind/map/filter/call?收集一系列JavaScript开发人员须要面临的共同源要点,并试着用本身的话来解释。用书面或口头的形式向另外一我的解释这些概念,有利于极大地提升你的技能。在练习的同时,尽可能去思考“若是是那种状况,又该如何?”的情景。例如,“若是我使用两次bind,那个这个”this“会是什么意思?jQuery如何确保this关键字指向jQuery对象,而不是全局对象?这个库如何完成必定的功能?”等等,这些都是你应该时常问问本身的常见问题。

学习标准

接下来须要了解的是EcmaScript标准。研读最新的EcmaScript标准副本。同时,还能够试着了解JavaScript中即将推出的功能,如ES6和ES7。近期已经出现了例如promises、modules、generators、comprehensions等新功能,好好阅读标准,也能够阅读专业书籍,如Nicholas Zakas的《Understanding EcmaScript 6》或Axel Rauschmayer博士的《Exploring JS》,或许会有所帮助。从主要源学习标准以及探索新增的语言才是通往专业化道路的途径和方法。

利用网络资源

我前面提到过利用网络来了解网络是危险的,可是如今我要提议的是咱们还能够利用网络来获取最好的资源。《Hacker News》就是一个很好的来源,可是持续的跟踪一般会耗费更多的时间,由于真正有用的信息比例是很低的。相反,还不如直接瞄准每周摘要如《JavaScript weekly》呢。随着时间的推移,你天然会领悟到哪些库或技术愈来愈有吸引力。能够在Twitter上找找有影响力的JavaScript开发人员。 其余的网络资源包括博客如Toptal Blogs、Rebecca Murphey’s blog和Nicholas Zakas’ blog等。

另外一个很是重要的网络资源是视频会议和教育视频。说到会议,JSConf系列的品质就很高。至于教育视频,我强烈建议Pluralsight,由于他们有着编写高质量课程经验的开发军团。

简而言之

  • 读书,书中自有信息之精华。
  • 了解基本的库,如jQuery、underscore和Backbone,阅读源代码。
  • 练习,试着用本身的话去解释常见的JavaScript概念,例如继承。就上述主题作演讲和讲座。
  • 通读新版本的标准,使用最新增长的语言。
  • 利用网络资源,查看摘要和博客,以及视频会议和教育视频。

结论

不断重复上述步骤,并参与到大量的项目中去有助于你快速提升你的JavaScript技能。但始终要牢记,只有付出才会有回报,才会有望成为专业人士。我自认为本身是一个很好的JavaScript程序员,可是要想成为专业人士我依然还有很长的路要走,还须要不断地学习和掌握知识和技术。

本次给你们推荐一个免费的学习圈,里面归纳移动应用网站开发,css,html,webpack,vue node angular以及面试资源等。获取资料👈👈👈
对web开发技术感兴趣的同窗,:👉👉👉加入 👈👈👈,无论你是小白仍是大牛我都欢迎,还有大牛整理的一套高效率学习路线和教程与您免费分享,同时天天更新视频资料。

最后祝学习快乐,愿与君共勉!

相关文章
相关标签/搜索