资讯专栏INFORMATION COLUMN

Node.js入门介绍

li21 / 1768人阅读

摘要:是一个针对网络应用开发的平台它基于的运行时引擎但它不仅仅只是的标准类库是它非常重要的一部分它涵盖了从服务端到同步或者异步的文件管理已经迅速成为一个可行并且真正高效的开发平台在诞生之前在服务端运行是件不可思议的事情并且对其他脚本语言来说要实现

Node是一个针对网络应用开发的平台,它基于Google的JavaScript运行时引擎V8,但它不仅仅只是V8.
Node的标准类库是它非常重要的一部分,它涵盖了从TCP服务端到同步或者异步的文件管理.

Node已经迅速成为一个可行并且真正高效的web开发平台.
在Node诞生之前,在服务端运行JavaScript是件不可思议的事情,并且对其他脚本语言来说,要实现非阻塞I/O通常需要依赖特殊的类库.

JavaScript与非阻塞I/O的组合极为强大:在JavaScript与生俱来的callback特性下,我们能在同一进程中异步地操作文件读写,网络sockets以及其他的I/O操作.

为什么使用Node

假设你正在开发一个广告服务器,每分钟需要发布几百万条的广告.
Node的非阻塞I/O将是一个高效的解决方案,因为服务器能够最大限度的利用到所有的I/O资源,并且不需要开发者写特殊的底层代码.

Node把非阻塞I/O作为提高某些类型应用性能的方式.
JavaScript传统的事件机制意味着在异步编程中,它有着相对方便以及容易理解的语法.
在传统的编程语言中,I/O操作将阻塞进程直到它完成为止.
Node的异步文件读写以及网络API意味着在这些相对较慢的I/O操作处理的时候,主进程仍然能处理其他请求

Node主要特征

Node的主要特性是它的标准类库,模块系统以及npm(包管理系统),当然还有许多其他的.
实际上Node最强大的特性是它的标准类库,它主要由二进制类库以及核心模块两部分组成,二进制类库包括libv,它为网络以及文件系统提供了快速的事件轮循以及非阻塞的I/O.同时它还有http类库,所以你可以很快确定你的http客户端和服务端.
Node的核心模块主要由JavaScript编写,有不清楚的地方,可以直接阅读源码.

Node环境中的关键部分如下图:

EventEmitter事件的接口

每个Node开发者都会接触到EventEmitter接口,它是大多数Node核心模块的基础,Stream,网络,文件系统全部继承于它.

高可拓展性I/O的基础

Streams继承于EventEmitters,能被用来在不可预测的输入下创建数据,比如网络连接,数据传输速度取决于其他用户在干什么.

FS:处理文件

Node的文件模块不但可以通过非阻塞的I/O读写文件,而且它也有同步的方法.你可以通过fs.stat异步获取文件的信息,也可以通过fs.statSync同步读取.

网络:创建网络客户端和服务端

网络模块是http模块的基础,也可以用来创建通用的网络客户端与服务端.

全局对象与其他模块

比如process对象,它让你可以把数据传入或者传出标准I/O流(stdout,stdin).
还有无处不在的console对象.

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/84032.html

相关文章

  • Electron入门介绍

    摘要:本文主要讲解的入门。可以帮助我们管理包的下载依赖部署发布等。可以认为是中的。后续使用中,全部替换为即可。命令根据它,自动下载所需模块用于创建窗口和处理系统事件安装包的位置。 Electron是什么 可以认为Electron是一种运行环境库,我们可以基于此,用HTML、JS和CSS写桌面应用。PC端的UI交互,主要有web应用和桌面应用。具体采用哪种方式,主要看系统的应用场景,哪个更合适...

    wing324 评论0 收藏0
  • webpack -> vue Component 从入门到放弃(一)

    摘要:本身也是运行在环境中的模块,它通常会返回一个函数。这个命名规则和搜索优先级顺序在的中定义。那就等下一篇介绍吧,一篇文章有太多内容,会让人很乏的从入门到放弃四从入门到放弃二从入门到放弃三源代码 此篇文章仅仅是整理自己接触webpack的入门过程,可能有很多不正确的地方,希望大家谅解,并指出错误帮助改进。 对于webpack的介绍和前期对他的入门使用,我觉得官方(中文网)已经介绍的很简单了...

    Ashin 评论0 收藏0
  • Vue.js 2.0 轻松入门(一)

    摘要:的官方下载地址点我进入的官方下载地址下载电脑系统对应文件,然后进行安装,安装成功之后通过命令行工具进入安装目录。注系统命令行工具通过开始菜单输入打开,系统为终端。 showImg(https://segmentfault.com/img/bVPL6q?w=200&h=200); Vue — 渐进式 JavaScript 框架 介绍 Vue.js 是什么 vue.js 是一套构建用户界面...

    617035918 评论0 收藏0
  • Vue.js 2.0 轻松入门(一)

    摘要:的官方下载地址点我进入的官方下载地址下载电脑系统对应文件,然后进行安装,安装成功之后通过命令行工具进入安装目录。注系统命令行工具通过开始菜单输入打开,系统为终端。 showImg(https://segmentfault.com/img/bVPL6q?w=200&h=200); Vue — 渐进式 JavaScript 框架 介绍 Vue.js 是什么 vue.js 是一套构建用户界面...

    mmy123456 评论0 收藏0
  • Vue.js 2.0 轻松入门(一)

    摘要:的官方下载地址点我进入的官方下载地址下载电脑系统对应文件,然后进行安装,安装成功之后通过命令行工具进入安装目录。注系统命令行工具通过开始菜单输入打开,系统为终端。 showImg(https://segmentfault.com/img/bVPL6q?w=200&h=200); Vue — 渐进式 JavaScript 框架 介绍 Vue.js 是什么 vue.js 是一套构建用户界面...

    red_bricks 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<