Node.js 自学的 6 个步骤

举报
福州司马懿 发表于 2021/11/19 03:36:02 2021/11/19
【摘要】 转自 http://cnodejs.org/topic/535376501969a7b22aca6d24 从刚接触Node.js到现在,自己也是一路摸滚打爬过来的,虽不说是什么高手,但对于如何学习Nod...

转自 http://cnodejs.org/topic/535376501969a7b22aca6d24

从刚接触Node.js到现在,自己也是一路摸滚打爬过来的,虽不说是什么高手,但对于如何学习Node.js,还是有一些个人见解,拿出来与大家共勉~

学习Node.js大致有 6 个步骤或者说 6 个层次:

第一步

对于刚接触Node.js的新手来说,第一步无非是打好基础,你需要弄明白以下事情:

  • JavaScript 的特性和语法。假如你对 JavaScript 还不熟悉的话,推荐书籍及链接:
    • JavaScript 推荐书籍列表
    • 深入理解JavaScript系列
  • Node.js 是什么?Node.js与JavaScript的区别是什么?
  • Node.js的优点?Node.js的缺点?
  • Node.js适用场景?Node.js不适用的场景?
  • Node.js的基本语法。Node.js的特性:
    • 单线程
    • 异步 IO
    • 事件驱动
  • npm 是什么?npm的基本使用
  • REPL
  • 等等

其实上面的内容,大部分Node.js的书籍都有介绍。基本了解了Node.js后,我们可以写一些 hello world 的程序:

  • 搭建一个 HTTP 服务器,返回 hello, world 。(使用 HTTP 模块)
  • 读取一个 txt 文件,将内容显示到命令行中。(使用 fs 模块)
  • 等等

第二步

你也许想,Node.js 只有那些少得可怜的核心模块能做什么呢?别担心,npm 上目前有近 7W 的第三方模块,月下载量高达 2.1亿 (2014—4—20 数据)… 这才是 Node.js 的活力所在。当你对Node.js已经了解的差不多了,并且按耐不住跃跃欲试了。这个时候,我们不妨用 Node.js 的第三方模块做些好玩的事情:

  • 搭建一个微博网站
  • 搭建一个博客网站
  • 搭建一个在线聊天室
  • 写一个简单的爬虫
  • 调用一些网站的API做一些好玩的东西
  • 等等

但是,并不是说 Node.js 只能做以上事情,几乎其他语言能做的事情 Node.js 都能做,而且有些情况下能做的更好。

第三步

当然,就像学 js 也不能只会用框架一样,学习 Node.js 也不能只会用外部模块。这个时候,我们需要回头深入了解下 Node.js 核心模块的用法。说白了,就是好好看 Node.js 官方 API 文档。看文档是码农必备技能,英语不好的童鞋浏览器装个划词翻译的插件。

第四步

  • 多实践。不管是用核心模块还是外部模块,尝试用 Node.js 解决某个问题或者替换掉以前用其他语言写过的代码。
  • 读源码。这里说的读源码并不是说上来就去读 Node 或者其他较大的框架的源码。这个时候,挑一些简单的只实现某个特定功能的工具模块的源码读,这种模块的代码通常在几百行,阅读起来并不是很困难,但是却能涨不少的姿势。比如:
    • underscore (学习 JavaScript 的语法和技巧)
    • 等等

第五步

坚持第四步。在使用 Node.js 时发现没有合适的模块选择或者选择的模块功能不尽人意,这个时候你可以尝试去创建一个模块或者修改现有的模块,并且使用 npm 发布自己的模块或者去该模块的 GitHub 上提 PR 。

第六步

  • 多实践。这个就不用解释了
  • 读 Node 源码及较大的框架的源码。提高必备
  • 多关注下 GitHub 上的牛人
  • 重复第1-6步

PS:贯穿始终的是买几本 Node.js 的书读,推荐《深入浅出Node.js》。

文章来源: blog.csdn.net,作者:福州-司马懿,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/chy555chy/article/details/52654950

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。