小白学习node.js的记录
模块仓库需要切换到阿里的源 $ npm config set registry https://registry.npm.taobao.org/
执行下面的命令,确认是否切换成功。 $npm config get registry
本人对于node.js一无所知,纯纯的小白一枚,想学习的初衷是了解node.js是什么,能用它干点什么,说白就是好奇心使然吧。接下来记录自己的学习过程。
注:若有错误欢迎指出,互相学习。segmentfault stackoverflow
谁适合阅读本教程?
如果你是一个前端程序员,你不懂得像PHP、Python或Ruby等动态编程语言,然后你想创建自己的服务,那么Node.js是一个非常好的选择。
Node.js 是运行在服务端的 JavaScript,如果你熟悉Javascript,那么你将会很容易的学会Node.js。
当然,如果你是后端程序员,想部署一些高性能的服务,那么学习Node.js也是一个非常好的选择。
简单的说 Node.js 就是运行在服务端的 JavaScript。
Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。
Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。(摘录)
www.npmjs.com 社区 看看nodejs的版本升级,新特性的加入,重要bug的修复等;github.com大量的项目和源码;stackoverflow.com技术解答社区以及查询相关资源,环境配置,异常均可找到答案。
node.js 偶数为稳定版本 奇数为非稳定版本
node 安装地址:http://nodejs.cn/download/ 根据自己的系统下载不同的安装包.
Node.js 回调函数
了解了阻塞与非阻塞调用的不同。第一个实例在文件读取完后才执行完程序。 第二个实例我们不需要等待文件读取完,这样就可以在读取文件时同时执行接下来的代码,大大提高了程序的性能。
因此,阻塞是按顺序执行的,而非阻塞是不需要按顺序的,所以如果需要处理回调函数的参数,我们就需要写在回调函数内。
注:回调函数可以做异步处理;阻塞和非阻塞 == 同步和异步
Node.js 是单进程单线程应用程序,但是通过事件和回调支持并发,所以性能非常高。
Node.js 的每一个 API 都是异步的,并作为一个独立线程运行,使用异步函数调用,并处理并发。
Node.js 基本上所有的事件机制都是用设计模式中观察者模式实现。
进程的读写;网络进程的管理
win+R 快捷键 调取cmd窗口
根据下载的安装包,进行安装;我的是win, (PS:太穷)在cmd 回车 输入 node -v 查看node版本号(node --version)
若出现 你输入的不是内部命令,是你的环境变量PATH 中没有路径,需要手动添加。
linux 中 cat /etc/redhat-release 查看centos 版本
rpm -q gcc rpm -q gcc-c++ 查看是否安装
yum -y install gcc gcc-c++ kernel-devel 安装gcc gcc-c++
gyp跨平台管理工具管理进程,gyp 是python 写的,所以需要安装python 2.7 不推荐使用python 3
mac xcode编译器
测试数据:server.js
接下来写个小栗子:
student.js
teacher.js:
kclass.js
index.js
index.js 入口文件 运行
疑问????? node.js 怎样在浏览器中访问呢??????、、