我如何开始使用Node.js
有没有什么好的资源开始使用Node.JS? 任何好的教程,博客或书籍?
当然,我已经访问了它的官方网站http://nodejs.org/ ,但我不认为它们的文档是一个很好的起点。
教程
- NodeSchool.io交互式课程
- 节点的艺术(Node.js的介绍)
- 你好,世界
- Hello World Web服务器 (付费)
- Node.js指南
- 使用Node.js,express和MongoDB构build博客
- 初学者的Node.js
- 充分和自信地学习Node.js
- 绝对初学者指南Node.js
- 节点JS处理模型 – 具有事件循环体系结构的单线程模型
- RisingStack的节点英雄系列
- 很棒的Node.js教程由编程社区投票
- Node.js食谱
-
Node.js教程
-
30天的节点
开发者网站
- Joyent的节点开发者网站
影片
- Node Tuts (Node.jsvideo教程)
- Node.js中的Einführung(德语)
- Ryan Dahl介绍Node.js
- Node.js:asynchronous纯度导致更快的开发
- 使用Node.js进行并行编程
- 带有Node,Connect和Express的服务器端JavaScript
- Node.js首先看
- Node.js与MongoDB
- Ryan Dahl的Google技术讲座
- 实时Web与Node.js
- Node.js初学者教程
- Pluralsight课程(付费)
- Udemy了解并了解Nodejs(付费)
- 新波士顿
截屏
- 了解所有节点
- 节点Tuts
- Node.js中的Einführung(德语)
- NodeCasts
图书
- 节点初学者书
- 掌握Node.js
- 启动并运行Node.js
- Node.js在行动
- 粉碎Node.js:无处不在的JavaScript
- Node.js&Co.(德文)
- 山姆的自学Node.js在24小时内
- 最详细的免费JavaScript书籍列表
- Mixu的Node Book
- Node.js正确的方法:实用,可扩展的服务器端JavaScript
- 从Node.js开始Web开发
- 节点Web开发
- NodeJS为正义的通用统治!
培训class
- 实时Web与Node.js
- DevelopMentor的基本Node.js
博客
- Node.js博客
- 如何节点
- DailyJS
- Nodejitsu博客
- 瑞安威尔科克斯的白皮书
- devthought
播客
- NodeUp
JavaScript资源
- Crockford的video (必须看!)
- 基本的JavaScriptdevise模式初学者
- JavaScript花园
- JavaScript模式书
- JavaScript:好的部分书
- 雄辩的JavaScript书
Node.js模块
- search注册的Node.js模块
- 精心devise的Node.js库清单
- GitHub / Joyent / Node.js上的Wiki列表 (从这里开始吧!)
其他
- JSApp.US – 像jsfiddle,但为Node.js
- VJET JS节点(适用于Eclipse IDE)
- 制作网站发布来源:
- 节点敲除Hackathon (来源)
- 有用的Node.js工具,教程和资源
- Runnable.com – 和jsfiddle一样,但是也用于服务器端
- 在Heroku上开始使用Node.js
- 在Open-Shift上开始使用Node.js
- 使用Passport进行身份validation
首先,学习Node.js的核心概念:
-
您需要了解Node.js鼓励的asynchronous编码风格 。
-
asynchronous!=并发。 了解Node.js的事件循环 !
-
Node.js使用CommonJS风格的require()来加载代码; 这可能与你习惯的有所不同 。
-
熟悉Node.js的标准库 。
然后,你会想看看社区提供什么:
Node.js包pipe理的黄金标准是NPM 。
-
这是一个pipe理项目依赖关系的命令行工具 。
-
确保您了解Node.js和NPM如何通过node_modules文件夹和package.json与您的项目进行交互 。
-
NPM也是几乎所有Node.js包的registry
最后,你会想知道一些更受欢迎的软件包是用于各种任务的:
每个项目的有用工具:
- 下划线包含您想要的每个核心实用程序方法。
- Lo-Dash是Underscore的一个克隆,其目标是更快,更具可定制性,并且有不less下划线没有的function。 它的某些版本可以用作下划线的下拉式replace。
- TypeScript使JavaScript变得更加可以忍受,同时也让你免于麻烦!
- JSHint是一个代码检查工具,可以节省大量的时间find愚蠢的错误。 找一个你的文本编辑器的插件,将自动运行在你的代码。
unit testing:
- 摩卡是一个stream行的testing框架。
- 誓言是asynchronoustesting,尽pipe有点陈旧的一个奇妙的。
- Expresso是一个比较传统的unit testing框架。
- 节点单元是另一个比较传统的unit testing框架。
- AVA是内置Babel的新testing运行者,并行运行testing。
网页框架:
- Express.js是目前最stream行的框架。
- Koa是由Express.js团队devise的一个新的Web框架,旨在为Web应用程序和API提供更小,更具performance力和更强大的基础。
- sails.js是Node.js最stream行的MVC框架,基于express。 它旨在模拟熟悉的Ruby on Rails框架MVC模式,但支持现代应用程序的需求:数据驱动的API与可扩展的面向服务的体系结构。
- meteor将jQuery,Handlebars,Node.js, WebSocket , MongoDB和DDP捆绑在一起,并且不用Ruby on Rails克隆就可以促进约定而不是configuration。
- Tower ( 已弃用 )是Express.js顶层的抽象,旨在成为Ruby on Rails的克隆。
- Geddy是另外一个Web框架。
- RailwayJS是受Ruby on Rails启发的MVC Web框架。
- Sleek.js是一个简单的Web框架,build立在Express.js之上。
- Hapi是一个以configuration为中心的框架,内置了对inputvalidation,caching,authentication等的支持。
-
Trails是一个现代的Web应用程序框架。 它build立在Rails和Grails谱系的基础之上,通过坚持直接的,基于约定的,API驱动的devise理念来加速开发。
-
Danf是一个全栈的OOP框架,它提供了许多function,以便生成可伸缩,可维护,可testing和高性能的应用程序,并允许在服务器(Node.js)和客户端(浏览器)两端以相同的方式进行编码。
-
Derbyjs是一个反应式的全栈JavaScript框架。 他们很长一段时间都在使用反应式编程和同构JavaScript等模式。
-
Loopback.io是一个function强大的Node.js框架,用于创buildAPI并轻松连接到后端数据源。 它有一个Angular.js SDK,并为iOS和Android提供SDK。
Web框架工具:
- Jade是Node.js世界的HAML / Slim
- EJS是一个更传统的模板语言。
- 不要忘记Underscore的模板方法 !
联网:
- Connect是Node.js世界的Rack或WSGI。
- 请求是一个非常stream行的HTTP请求库。
- socket.io便于构buildWebSocket服务器。
命令行交互:
- minimist只是命令行参数parsing。
- Yargs是parsing命令行参数的强大库。
- Commander.js是用于构build一次性命令行应用程序的完整解决scheme。
- Vorpal.js是构build成熟,沉浸式命令行应用程序的框架。
- 粉笔使您的CLI输出漂亮。
使用stream:
- mississipi你想念小溪的一切。
- https://github.com/calvinmetcalf/streams-a-love-story
- http://maxogden.com/node-streams.html
- https://github.com/substack/stream-handbook
- stream如何帮助提高Node.js的性能
使用源,卢克。
不,但我认真地发现,从源代码构buildNode.js,运行testing以及查看基准确实让我走上了正轨。 从那里,lib目录中的.js文件是一个很好的地方,特别是文件http.js.
更新:一年前我写了这个答案,自那时以来,人们在学习Node.js时可以获得大量资源。 虽然我仍然认为潜入源头是值得的,但我认为现在有更好的方式开始。 我会build议一些关于Node.js的书开始出现。