Node.js学习笔记(一):快速开始

最近接了一个node项目,虽然最后顺利完成了,可是因为第一次实战,整个过程是赶出来的,许多地方只知其一;不知其二。如今项目结束了,就静下心来系统地学一学,理一理,读书不忘拿笔,既然读书了,固然就要记点东西。一方面:能帮助本身加深印象,更好的理解,另外一方面:能有幸帮助到别人也是不甚欢喜的。本人大部分的学习内容来自于如下书籍。javascript

Node.js简介

Node.js不是JS应用、而是JS运行平台 --《深刻浅出Node.js》java

Node.js采用C++语言编写而成,是一个后端的Javascript的运行环境。它使用了Google的V8虚拟机(Google的Chrome浏览器使用的 JavaScript执行环境),来解释和执行JavaScript代码。node

Node.js特性

  1. 基于事件驱动的异步I/O(非阻塞)git

    线程在执行中若是遇到磁盘读写或网络通讯(统称为 I/O 操做), 一般要耗费较长的时间,这时操做系统会剥夺这个线程的 CPU 控制权,使其暂停执行,同时将资源让给其余的工做线程,这种线程调度方式称为阻塞。github

    Node.js的设计思想中以事件驱动为核心的异步I/O(非阻塞)。全部的磁盘 I/O、网络通讯、数据库查询都以非阻塞的方式请求,返回的结果由事件循环来处理数据库

    Node.js 在执行的过程当中会维护一个事件队列,程序在执行时进入事件循环等待下一个事件到来,每一个异步式 I/O 请求完成后会被推送到事件队列,等待程序进程进行处理。npm

  2. 支持的编程语言是javascript
    Javascript的匿名函数和闭包特性很是适合事件驱动、异步编程。同时Javascript在动态语言中性能较好,再加上V8引擎也是同类的佼佼者,因此Node.js的性能也受益其中。编程

Node.js & npm的安装与配置

Node.js的安装方法很简单,直接上官网或者百度一个选择相应版本下载安装就行,就很少说了。安装完后能够经过输入 "node -v" 来测试是否成功安装。windows

tips: 工做中可能会须要多个node版本之间的相互切换,推荐使用nvm工具(but,暂不支持windows)后端

Nodejs自身提供了基本的模块。可是在这些基本模块上开发实际应用须要较多的工做,npm的存在解决了该问题,它是Nodejs的包管理器:

  • 容许用户从NPM服务器下载别人编写的第三方包到本地使用。
  • 容许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用。
  • 容许用户将本身编写的包或命令行程序上传到NPM服务器供别人使用。

新版的nodejs已经集成了npm,因此不须要再进行安装操做。一样能够经过输入 "npm -v" 来测试是否成功安装。

Hello World

至此,咱们的node开发环境就基本搭建完成了,咱们来开始实现第一个 Node.js 程序。打开你经常使用的文本编辑器,在其中输入:

console.log('Hello World');

将文件保存为 helloworld.js,打开终端,进入 helloworld.js 所在的目录,执行如下命令:

node helloworld.js

若是一切正常,你将会在终端中看到输出 Hello World

相关文章
相关标签/搜索