有机会接触到node.js,感觉它很酷,所以希望学习并深入了解。结合《node.js开发指南》进行学习,现做如下笔记。
- 什么是node.js
引用 开发指南中的一句话:
"Node.js 是一个划时代的技术,它在原有的Web 前端和后端技术的基础上总结并提炼出了许多新的概念和方法,堪称是十多年来Web 开发经验的集大成者。Node.js 可以作为服务器向用户提供服务,与PHP、Python、Ruby on Rails 相比,它跳过了Apache、Nginx 等HTTP服务器,直接面向前端开发。Node.js 的许多设计理念与经典架构(如LAMP)有着很大的不同,可提供强大的伸缩能力,以适应21世纪10年代以后规模越来越庞大的互联网环境。"
- Node.js特点
-
单线程与异步IO
Node.js 使用的是单线程模型,对于所有I/O 都采用异步式的请求方式. Node.js 在执行的过程中会维护一个事件队列,程序在执行时进入事件循环等待下一个事件到来,每个异步式I/O 请求完成后会被推送到事件队列,等待程序进程进行处理。
这样的设计思想与传统的多线程不同,这样避免了线程创建撤销与线程切换的效率问题。说这是node.js效率高的原因。但对于多线程与单线程异步 方式的效率问题自己再慢慢学习。
-
Node.js以JavaScript语言作为开发语言,V8 作为JavaScript引擎
"JavaScript 具有其他诸多语言不具备的优势,例如速度快、开销小、容易学习".自己对JavaScript语言也只是了解,并没用深入的学习。
- 搭建windows开发环境
- 下面介绍如何在windows下搭建node.js开发环境.
Node.js官网下载地址:http://nodejs.org/下载并安装。安装包很小 只有6m多。
进行默认安装即可。安装完成在开始菜单会看到如下几个链接。
-
用node.js 开发 helloworld 程序。
- 打开 如上菜单中 node.js command prompt
输入 console.log(‘hello world‘); 回车。
- 在d: 根目录下建立 hello.js文件, 打开输入console.log(‘Hello World‘);
在命令提示符下 输入 D:
输入 node hello.js
-
第一个helloworld 网页
Hello.js 中内容改为
var http=require("http");
http.createServer(function(request, response){
response.writeHead(200, {"Content-Type": "text/plain"});
response.write("Hello World");
response.end();
}).listen(3000);
输入 node hello.js 打开浏览器 输入http://localhost:3000/