NodeJS的流行也带来了开发由前端转到全栈,前端再也不局限于页面如何展示,用户如何操做,也设计到整个应用的架构以及业务流程。前端
本篇来简单的经过实例,讲述node中web开发的模式。node
参考来自《Node web开发》一书。web
node是基于事件的异步驱动系统,经过可扩展的方式建立网络服务器。npm
例如,建立一个网络服务器:json
var http_port = 8124; var http = require('http'); var server = http.createServer(function (req,res){ ....本身的代码 }); server.listen(http_port);
这样就能够建立一个简单的服务器。服务器
npm是node的包管理工具,node里面有不少的模块,能够经过require('模块名字')的方式加载到项目中。网络
经常使用的命令:架构
npm init 建立项目的package.json文件,配置其信息以及依赖项 npm install 经过package.json的声明,安装须要的包 npm install xxxx 安装xxxx包 npm install xxxx --save-dev 以开发模式安装xxxx包,当用于生产环境时,不会下载开发模式的xxxx
在node中,很注重模块化,按照commonjs的思想,尽可能把功能分散到模块中进行重用。异步
可是也有点弊端,会出现不少松散的文件,不易于管理。模块化
一般node中都会把第三方的模块包,放在node_modules文件夹中,node也会在require()的时候,自动向上搜索该文件家,引用其js。
node_modules中的js文件,大可能是一些加载自动执行的文件,或者对外暴露出必定的接口,好比:
(function(a,b){}( this, function(){ //..... }));
或者
var xxx = require('xxx'); exports.funca = function(){ //.......xxx } exports.funcb = function(){ //.....xxx }