购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.1 Node.js与npm简介

本节对Node.js、npm进行了介绍,以及对需要使用到Node.js框架的原因进行了介绍。

1.Node.js简介

关于Node.js,官网( https://nodejs.org )给出的定义如下。

Node.js是一个基于Chrome V8引擎的JavaScript运行环境。Node.js使用了一个事件驱动、非阻塞式I/O的模型,使其轻量又高效。Node.js的包管理器npm,是全球最大的开源库生态系统之一。

虽然只有几句话,但是已经很清楚地描述了Node.js以及npm的概念。

Node.js本身并不是一个新的开发语言,也不是一个JavaScript框架,而是一个JavaScript运行时,底层为Google Chrome V8引擎,并在此基础上进行了封装,可用于创建快速、高效、可扩展的网络应用。Node.js采用事件驱动与非阻塞I/O模型,以使得Node.js轻量并高效。

图2-1为Node.js的架构图,可以看到底层使用C/C++编写。

图2-1 Node.js架构图

2.npm简介

npm是Node.js的包生态系统,是最大的开源生态系统。可以理解为基于Node.js框架,全世界的开发者提交了各种各样的功能类库到npm中,其他开发者在开发过程中需要使用的大部分功能都可以在npm中找到已存在的库,完全不需要自己“造轮子”。

截至2018年3月npm官网( https://www.npmjs.com/ )上已有60多万个包,是一个非常大的宝库,你可以下载、使用、学习各种类库,当然,也可以贡献自己的类库到npm中供其他开发者使用。

可以在npm中直接搜索你在开发过程中需要使用到的任何功能库,假设你需要一些关于cookie处理的JavaScript类库,图2-2就是在npm中搜索cookie相关类库的结果。使用npm库是你使用React Native开发App肯定会接触到的一个过程。

图2-2 npm中搜索类库

3.React Native与Node.js的关系

Node.js提供了很多的系统级的如文件操作、网络编程等特性,并且是事件驱动、异步编程的。React构建于Node.js之上,其实本质上React也是npm包中的一个,React Native也是npm包之一,只不过是功能非常强大的包而已。所以整个的框架都构建于Node.js之上,并且Node.js还提供了海量的类库,在这个完整的生态系统下开发,过程将变得更加高效,在后续的章节中将会慢慢体会到此生态系统的价值。 kMuK7RL4j6b2nMsROU4TZXCEe+D5ev6WftlsXbO2eWhj+Ec41OTPgJQryYTaycbj

点击中间区域
呼出菜单
上一章
目录
下一章
×