《高级前端8.1》Node.js 初识
2008年后由 Google 推动的新的 Web 浪潮以来,JavaScript 从一个丑小鸭变成了白天鹅。这其中 Node.js 功不可没。诞生于2009年的 Node.js,现在已是如日中天。
认识 Node.js
一、诞生
2008年,Ryan Dahl希望创建一个易扩展、适用于现代Web应用通信的服务器平台(以API为中心,而不是页面为中心)。以及服务器和浏览器间的实时通信,尤其是服务器到浏览器端的消息推送。
二、国内外的应用情况
LinkedIn, Paypal, Twitter, 知乎的推送, 网易, 阿里, Uber等等
三、主要应用领域
- RESTFulAPI(尤其是Angular,Backbone等单页应用,借助GET,POST,UPDATE,INIT等获取操作数据)
- 实时通信:如消息推送等
- 高并发
- I/O阻塞
四、社区与生态圈
社区:生于社区,社区推进,Github,国内交流大会
生态圈:NPM,基础服务提供商的支持(开发,测试,部署,运维),周边服务提供商的支持(Node开发组件SDK)
五、知名的Node.js开源项目
express,PM2,jade,CoffeeScript,socket.io,mongoose,mocha
Node.js 与 JavaScript 的关系
前端框架
DOM操作:jQuery / ExtJS / YUI
结构化前端框架:AngularJS / Backbone.js / Ember
Node.js 的特点
事件、异步。
异步的实现方式:回调函数,事件监听,订阅/发布