Node 概述
什么是 Node
Node.js® is a JavaScript runtime built on Chrome‘s V8 JavaScript engine. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient. Node.js‘ package ecosystem, npm, is the largest ecosystem of open source libraries in the world.
中文翻译:Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。Node.js 的包管理器 npm,是全球最大的开源库生态系统。
Node.js 于 2009 年写成,其原始作者是瑞安·达尔(Ryan Dahl),Node.js 基金会于 2015 年初成立。基金会得到了 IBM、Intel、微软、Joyent 等公司的支持,目前 Node.js 的研发和管理由 Node.js 基金会统一管理。
Node 的意义
-
node 开启了 JavaScript 牛逼的后端之旅。【虽然,在 Node 之前就有 js 服务端的尝试,但是都没有 Node 成功】
-
由于 node 集成了 js 单线程、事件驱动、非阻塞 I/O 模型等优点,NodeJs 天生就非常适宜做高性能的网络请求、密集 IO 的应用,为前端开发者敞开了全栈的大门
-
node 还为前端开发工具百花齐放百家争鸣提供了基础环境,让前端真正进入工程化时代。
-
....
Node 能干什么
- 高性能的网站服务器
- 实时多人游戏后台服务器
- 简单易用的命名行应用程序
- gulp、less、bower、fis、http-server
- 高大上的桌面应用程序
- 使用 Web 技术 作为解决方案
- electron Linus + Max + Windows
- 底层的物联网开发
- 移动开发
- .....
诞生过程
Node 的作者:Ryan Dahl
- 2004年还在纽约读数学系博士
- 2006年退学(世界那么大,我想去看看),生活所迫,选择了码农
- 接项目、工作、旅行,两年之后,成为了高性能Web服务器的专家
- 2009年5月,Ryan Dahl 在 github 上发布了最初的 Node 版本
- 2010年底,Ryan Dahl 加入 Joyent 公司全职负责 Node 的发展
- 2011年7月,Node 在微软的支持下发布了 Windows 版
- 2012年1月底,Ryan Dahl 将掌门人身份转交给了 Isaac Z.Schlueter,自己转向一些研究项目
- 2014年12月,多为重量级Node开发者不满 Joyent 对 Node 的管理,自立门户创建了
io.js
- 2015年9月,Node 与 io.js 合并,Node 的版本从 0.12.7 直接升级到了 4.0.0
- 合并后的 io.js 和 Node 在 Joyent 公司的维护下并行了两个版本:
- 一个是4.x.x 还是原来的 Node,这个版本是稳定版
- 一个是5.x.x,目前已经更新到了 6.8.1,其实就是 io.js,最新特性版,不建议生产环境使用
- Node 计划在 2016 年 10月底正式发布 Node 7.0
- 7.0 已经最大限度的支持了很多的 ES6 新语法
- 而且提高了整体的执行性能,提供了一些别的API
总结
Node是一个开发平台,这个开发平台运行的语言是JS(其实也可以运行C++),它可以把JS代码编译成本地的本地操作系统的命令,直接运行在操作系统之上,让JS拥有了无比广阔的发展空间。