今天看到一篇好文,转过来与大家分享:如何系统地学习Node.js?
发布于 5 年前 作者 abochi 2036 次浏览 来自 分享

这篇文章我看完挺好的,反正对于我来说有一个思路,分享一下给到大家~

以下是正文: 本文通过提供给大家学习的方法,帮助你更快更好的学习 Nodejs,了解前后端的 HTTP 知识,以及配置和使用阿里云 ECS 来部署你的 Nodejs 项目,成为那个具有争议的全栈开发工程师。

要不要学习 Nodejs 如果你是前端开发工程师,你本地电脑上不可避免的要安装 Nodejs,作为工具也好,作为服务器也好,要帮助你做掉很多又脏又累的事情,比如 less/scss 的编译,ES6/7 到 ES5 的转换,Javascript 代码的压缩合并,切页面调试样式的热更新,无论是通过社区迅速更新换代的 Grunt/Gulp/Webpack,还是通过自己集成或者定制到本地的其他模块,Nodejs 的这个运行环境都是你得力的助手。

如果你是后端开发工程师,比如之前是开发 PHP,Java,最近转行做 Nodejs 或者想要增加一个语言技能才来学习 Nodejs,你也不可避免的要去了解 ES5/6/7 或者说 Javascipt 的整个语法概念,去浏览 Nodejs 的各个 API,然后基于 Nodejs 之上的一些流行框架,比如 Express/Koa,甚至是阿里开源的 Egg,用你既有的后端开发经验,对于 Web 服务层交互的知识,再套上这些框架的 API,来玩票性质的搭建一些子项目运行一些产品业务。

如果你是运营或者产品经理,但是你已具备一些基本的开发技能,比如 HTML/CSS/Javascript,甚至是对 Linux 主机的系统使用,域名解析也有一些经验,你可能也更愿意在不去学习另外一种全新的语言下,来借助 Nodejs 搭建你的 Web 服务,帮你的小点子小创意快速上线测试,获取一些用户的反馈或者价值验证,事实上我认识的不少产品经理对 Express/React/Vue 这些很喜欢,能高效的帮他们实现一些产品原型的测试。

以上举例,是为了说明影响你涨薪也就是职业发展的其中一个因素,就是某项技能的深度,或者是某些技能的广度,这些技能包含但不限于前端后端或者产品,不要给自己设限,从事某个工种不代表你只可以钻研这个工种,就拿前端举例,既然本地有了 Nodejs 的运行环境,那么适度的往下扩展技能树是顺水推舟的事情,而对 Nodejs 很感兴趣的无论任何职业的人来说,什么时候学习它都不晚,因为整个互联网经过几十年的发展目前的现状就是, Javascript 成为了 Web 层最容易入门使用且最被工业标准和厂商推广的语言,掌握了这个语言,就掌握了 Nodejs 的 1/3,剩下的 2/3 分别是 HTTP 知识和 Nodejs 本身的运行机制和系统能力。

先看书看文档 还是先找项目练手对于学习习惯不同记忆能力不同的人来说,看文档和做项目哪个更优先,应该不会有标准答案,而且这两个在中期以后往往是交叉的,我个人的学习习惯一般是,先做项目,如果项目太难,我就把项目中难的功能都去掉,梳理出一个最简版本,以写代码为为主,以看文档作为补充,比如白天或者核心时间写代码,午间或者公交车上这些零碎时间翻文档,可以有目的的看,也可以随便挑几个感兴趣的看,这样做的缺点是,在项目一开始启动的时候,会因为不熟悉文档,走一些弯路而且比较耗脑力,它的优点是,一开始就写代码有作品雏形出来,容易激发我征服它的斗志,更有欲望把它做出来,所以这样开始的方式,往往我都不会中途放弃,而看文档的方式,我会觉得枯燥,或者不知所云,可能看看就困了放弃了,这种不太适合我,但是它的优点也很明显,如果充分的看了文档,基于原作者或者原始团队的角度理解技术点,更容易一开始就走在正确的道路上,无论是名词还是原理或者 API,心中会很有方寸,做项目的时候也容易推测出来出问题的环节去哪里找答案。

对于新人来说,先把项目做起来会比较实用,走弯路和踩的坑必然会多一些,但是这样更容易产生兴趣把硬骨头啃下来,也会提高解决问题的即时反应能力,所谓临阵不惧,运筹有度。哪里找练手项目练手项目从观看类型上分两种,一种是纯文字形式的,比如连载的博客,一种是node.js视频教程,或者是直播或者是录播的视频,连载的博客好处是都形成了文字,并且有代码示例,看的时候可以用脑力集中消化某一个技术点,容易看懂,这同时也是它的一个缺点,因为博客中不同的技术点都用大脑消化后,就会产生一种已经理解了它的直觉,这种直觉会促使你快速的通读全完直到最后,所有的编程环节却没有动手实施,导致过了三五天后再来回想这些文字和当初所理解的概念,脑海中就会印象模糊甚至一片空白,用行话说就是没有把消化后的知识持久化。

直播的视频对个人的时间要求比较严格,同时直播中不能暂停甚至不能提问,会导致自己被动的 Push 往前走,容易遗留下一些关键的问题点没有及时消化,不过现在有的直播平台会自动存储有备份,所以也可以重播。

如果你对 Nodejs 已经有一定的掌握了,那么其实可以跳开一些简单的博客啊视频啊,直接上 Github 上搜一些别人开源的 Github 项目,Clone 到本地,跑起来,再去读他们的源码,这是最直接也最有效的学习方式了,但是这个对于初学者往往比较难,因为阅读源代码的前提是要有一定的编程量,上来就一通读不仅会增加理解项目的难度,更会因此失去阅读代码的兴趣。

回到顶部