开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第13天,点击查看活动详情
一、node.js 有什么特点
node.js...它既是开发平台, 也是运行环境, 也是个新的语言...它本身是基于 google 的 javascript
v8 引擎开发的, 因此在编写基于它的代码的时候使用 javascript 语言. 但是又不同于传统概念的javascript...它的服务端功能以及部分客户端功能必须在服务端运行, 所以它实际上是一种在服务端的开发+运行的 javascript 语言. 它本身可以作为 HTTP Server, 也可以当作 TCP Server 用.他是一个 javascript 运行环境,依赖于 Chrome V8 引擎进行代码解释
特征:单线程、事件驱动、非阻塞 I/O,轻量,可伸缩,适于实时数据交互应用单进程,单线程 (一个应用程序对应一个进程, 一个进程下面会有多个线程, 每个线程用于处理任务..)
node 无法直接渲染静态页面,提供静态服务
node 没有根目录的概念
node 必须通过路由程序指定文件才能渲染文件
node 比其他服务端性能更好,速度更快
Nodejs 是单线程,非阻塞 I/O,事件驱动,它的特点决定了它适合做一些大量 I/O 的东西,比如,聊天室,表单提交等不需要大量计算的功能。做一些微信后端开发,或者做消息系统等。可以整个项目用,也可以根据它的特点在某个模块使用,比如 socketio,打造一个消息系统等
二、npm 作用是什么,有什么好处
允许用户从 NPM 服务器下载别人编写的第三方包到本地使用
允许用户将自己编写的包或命令行程序上传到 NPM 服务器供别人使用
通过 NPM,你可以安装和管理项目的依赖,并且能够指明依赖项的具体版本号,可以通过package.json 文件来管理项目信息,配置脚本