[6]_先从前端说起 - Nodejs学习之基础(1)

[6]_先从前端说起 - Nodejs学习之基础(1)

随着移动开发的火热,Nodejs的技术应用也特别的热门,先从前端开始了解,一则,容易从“表面现象”去懂应用是个什么样,同时也是了解一门新技术应用的过程。

Nodejs历史

  1. 2009年2月,Ryan Dahl在博客上宣布准备基于V8创建一个轻量级的Web服务器并提供一套库。
  2. 2009年5月,Ryan Dahl在GitHub上发布了最初版本的部分Node.js包,随后几个月里,有人开始使用Node.js开发应用。
  3. 2009年11月和2010年4月,两届JSConf大会都安排了Node.js的讲座。
  4. 2010年年底,Node.js获得云计算服务商Joyent资助,创始人Ryan Dahl加入Joyent全职负责Node.js的发展。
  5. 2011年7月,Node.js在微软的支持下发布Windows版本。

Nodejs的时间不长,才短短的6年,就已经获得了很大的成就。而且建立在Nodejs基础之上的,或者基于Nodejs思想的框架也非常之多,React、swagger…,这些就不一一举例了。github,或者Nodejs的第三方库,都可以查询到,NPM淘宝也有对应的镜像了:https://npm.taobao.org/。

Nodejs能做什么?

现在号称Nodejs是个全栈框架,可见她的适用范围是如此之强,但是她具体有什么特征了,我觉得至少下面几点是吸引开发人员的:
1. 全栈,既能做WebServer,又能处理前端,让一名前端工程师,华丽丽的转成了服务器端工程师,好吧,从某个角度来说,这类工程师都成全栈工程师了。
2. 异步IO带来访问的高效性。
3. 开发速度很快,尤其是社区非常活跃,贡献者特别之多,所以拿来主义者很容易就找到所需的,现在甚至有Nodejs的桌面框架,全端工程师,又一次次华丽丽的转为了桌面工程师了。
4. 与现在的WebApp结合开发,非常不错,因为使用Nodejs实现Restful API,很容易让WebApp与后台服务器交互
5. V8虚拟机的高效性,因为本身由C++写的,所以执行效率和速度方面都很优秀,这就导致很多企业现在在开发WebApp的时候,会选择Nodejs作为后端的服务器。
6. 事件驱动为核心。
7. …
当你喜欢一门语言的时候,反正是能找到N条说服自己的原因了。

Nodejs安装&使用

这个入门的方式网上有很多的教程,其中官方的也说了很清楚:
https://nodejs.org/documentation/tutorials/

Nodejs书籍推荐

如果懂Javascript的,基本上很容易就上手了,基本上1分钟,就出来个Hello Nodejs了。当然深入还是需要看一些书的,我觉得这两本书不错:
《深入浅出Node.js》(这本书很值得一看,很多东西也说的比较清楚,不仅仅Nodejs应用,也将Javascript的一些知识点罗列总结的不错)
《Node.js实战》(老外写的那本,国人也有类似的一本实战,但是个人觉得一般,只是将网上的教程照撸一遍,很多Nodejs的精髓没有讲到)

Nodejs常见模块

MVC框架 – Express (3.0与4.0之间还是有一定差异)
Rest开发 – Restify
渲染模板 – EJS、Handlebars、Jade
数据库驱动 – Mongoose、MongoDB等
WebSocket – Socket.IO
Http调试 – Request
异步流程控制 – Async(貌似是国人写的?)
热部署 – forever、supervisor(开发时用的较多)
项目管理 – Grunt、Bower、Yeoman
定时任务 – Cron
工具包 – Underscore、Moment、Connect等

当然还有很多不错的模块,基本上应用的所有功能都能找到适用的模块。

如何学习Nodejs

伯乐在线有篇文章总结了很好了:
http://blog.jobbole.com/71913/
http://blog.fens.me/series-nodejs/

还有什么是和Nodejs相关的东西

资源汇总:
https://cnodejs.org/topic/54128625351649283bcc5b30

你可能感兴趣的:(NodeJS)