我如何开始使用Node.js [关闭]


1264

有什么好的资源可以开始使用Node.JS?有好的教程,博客或书籍吗?

当然,我已经访问了它的官方网站http://nodejs.org/,但是我认为他们拥有的文档不是一个很好的起点。


8
如果你和想知道如何如何使用Node.js建立一个网站,你就从php'ish背景的,我问怎么办这里stackoverflow.com/questions/11311672/...。我觉得这是很多人想念的。
本杰明·格伦鲍姆

Answers:


4591

讲解

开发者网站

影片

截屏

图书

培训班

网志

播客

JavaScript资源

Node.js模块

其他


21
这些书是按您的价值顺序排列的还是随机排列的?希望购买有关nodeJS基础的良好参考手册。
大卫,

6
@David:或多或少是随机的。前两个可免费使用,最后一个处于预览模式。我建议从“节点初学者”开始。
yojimbo87 2011年

127
我的书(Node已启动并正在运行)可在此处免费获得:ofps.oreilly.com/titles/9781449398583永久。现在它也是一本电子书和印刷品。
sh1mmer 2012年

57
尽管我确定需要花很多精力来编制此列表,但获得最多3个最佳位置(在您看来)实际上会更有帮助
一位开发者眼中的

15
@ sh1mmer:死链接。此作品(同一本书):chimera.labs.oreilly.com/books/1234000001808/index.html
Nepoxx 2014年

1795

首先,学习Node.js的核心概念:

然后,您将要查看社区必须提供的功能:

Node.js软件包管理的黄金标准是NPM

最后,您将想知道一些比较流行的软件包用于各种任务:

每个项目的有用工具:

  • 下划线几乎包含您想要的每个核心实用程序方法。
  • Lo-Dash是Underscore的克隆版本,旨在更快,更可定制,并具有Underscore所没有的许多功能。它的某些版本可以用作下划线的替代产品。
  • TypeScript使JavaScript更加易于使用,同时也避免了麻烦!
  • JSHint是一种代码检查工具,可以节省您发现笨拙错误的时间。为您的文本编辑器找到一个插件,该插件将自动在您的代码上运行它。

单元测试:

  • Mocha是一种流行的测试框架。
  • 尽管有些陈旧,但Vows是异步测试的绝佳选择。
  • Expresso是更传统的单元测试框架。
  • 节点单元是另一个相对传统的单元测试框架。
  • AVA是内置Babel的新测试运行程序,可同时运行测试。

Web框架:

  • Express.js是迄今为止最受欢迎的框架。
  • Koa是Express.js背后的团队设计的一种新的Web框架,旨在为Web应用程序和API提供更小,更富表现力和更强大的基础。
  • sails.js是Node.js上最受欢迎的MVC框架,它基于express。它旨在模仿Ruby on Rails等框架的熟悉的MVC模式,但支持现代应用程序的需求:具有可扩展的,面向服务的体系结构的数据驱动API。
  • 流星将jQuery,Handlebars,Node.js,WebSocketMongoDB和DDP 捆绑在一起,并促进了配置约定,而无需成为Ruby on Rails克隆。
  • 已弃用)是Express.js顶部的抽象,该顶部旨在成为Ruby on Rails克隆。
  • Geddy是Web框架的另一种表现。
  • RailwayJS是受Ruby on Rails启发的MVC Web框架。
  • Sleek.js是一个基于Express.js的简单Web框架。
  • Hapi是一个以配置为中心的框架,内置了对输入验证,缓存,身份验证等的支持。
  • Trails是一个现代的Web应用程序框架。它基于RailsGrails的血统书,通过遵循基于约定的,简单的,API驱动的设计哲学来加速开发。

  • Danf是一个完整的OOP框架,提供许多功能,以便生成可伸缩,可维护,可测试和高性能的应用程序,并允许在服务器端(Node.js)和客户端(浏览器)上以相同的方式进行编码。

  • Derbyjs是一个反应性的全栈JavaScript框架。他们长期使用诸如反应式编程和同构JavaScript之类的模式。

  • Loopback.io是一个强大的Node.js框架,用于创建API并轻松连接到后端数据源。它具有Angular.js SDK,并提供iOS和Android的SDK。

Web框架工具:

联网:

  • Connect是Node.js世界的Rack或WSGI。
  • 请求是一个非常流行的HTTP请求库。
  • socket.io可用于构建WebSocket服务器。

命令行交互:

  • 极简主义只是命令行参数解析。
  • Yargs是用于解析命令行参数的强大库。
  • Commander.js是用于构建一次性命令行应用程序的完整解决方案。
  • Vorpal.js是一个用于构建成熟的,身临其境的命令行应用程序的框架。
  • Chalk使您的CLI输出漂亮。

使用流:


6
在框架下,您应该添加Railwayjs.com
Sagiv Ofek

21
@Farm问题是关于node.js的。Angular是一个浏览器框架,与此处无关。
亚历山大·乌利丁

承诺:要编写可维护且可读的异步代码,我建议github.com/kriskowal/q
Farm

2
NodeJS

1
我强烈建议将Webstorm和IDE一起使用,因为它具有强大的node.js支持。
Silve2611 '16

144

使用消息来源卢克。

不,但是我发现从源代码构建Node.js,运行测试以及查看基准确实使我走上了正确的道路。从那里开始,可以找到lib目录中的.js文件,尤其是http.js文件。

更新:我一年多以前写了这个答案,自那时以来,可供学习Node.js的人们使用的大量资源激增。尽管我仍然认为深入研究源代码是值得的,但我认为现在有更好的入门方法。我建议一些有关Node.js的书籍开始问世。


9
开头行+1的+1,但这就是我倾向于使用Kohana的方式。因此,只要您能理解源代码,这就是一个很好的方法。
Olical 2011年

1
Express可帮助您入门imo。我的意思是,至少它为您提供了一个起点,一个可行的例子……有些事情要摆弄。 expressjs.com/en/guide/routing.html
Wolfpack'08
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.