Node.js 简介
简介: Node.js 是一个开源和跨平台的运行时环境,用于在浏览器之外执行 JavaScript 代码。您需要记住NodeJS 不是框架,也不是编程语言。大多数人感到困惑并理解它是一个框架或编程语言。我们经常使用 Node.js 来构建后端服务,例如 Web App 或 Mobile App 等 API。它被 Paypal、Uber、Netflix、Walmart 等大公司用于生产。
NodeJS 的特点:我们也可以使用其他编程语言来构建后端服务,所以我将解释 Node.js 的不同之处。
- 易于上手,可用于原型设计和敏捷开发
- 它提供快速且高度可扩展的服务
- 它在任何地方都使用 JavaScript,因此 JavaScript 程序员可以很容易地使用 Node.js 构建后端服务
- 源代码更清晰和一致。
- 开源库的大型生态系统。
- 它具有异步或非阻塞性质。
NodeJS 的优点:这里是使用 Node.js 的好处
- 易于扩展性:开发人员更喜欢使用 Node.js,因为它可以轻松地在水平和垂直方向上扩展应用程序。我们还可以在应用程序的可扩展性期间添加额外的资源。
- 实时网络应用程序:如果您正在构建网络应用程序,您也可以使用PHP,并且使用 Node.js 将花费相同的时间,但如果我正在谈论构建聊天应用程序或游戏应用程序 Node.js由于更快的同步,更可取。此外,事件循环避免了 Node.js 开发的 HTTP 过载。
- Fast Suite: NodeJs 运行在 Google 开发的 V8 引擎上。 NodeJs 中的事件循环处理所有异步操作,因此 NodeJs 就像一个快速套件,所有操作都可以快速完成,例如在数据库、网络连接或文件系统中读取或写入
- 易于学习和编码: NodeJs 易于学习和编码,因为它使用 JavaScript。如果您是前端开发人员并且对 JavaScript 有很好的掌握,您可以轻松学习并在 NodeJS 上构建应用程序
- 缓存的优点:它提供了单个模块的缓存。每当对第一个模块有任何请求时,它都会缓存在应用程序内存中,因此您无需重新执行代码。
- 数据流:在 NodeJs 中,HTTP 请求和响应被视为两个独立的事件。它们是数据流,因此当您在加载时处理文件时,它将减少总体时间,并且当数据以传输形式呈现时会更快。它还允许您以闪电般的速度流式传输音频和视频文件。
- 托管: PaaS(平台即服务)和 Heroku 是 NodeJS 应用程序部署的托管平台,易于使用且不会遇到任何问题。
- 企业支持:大多数知名公司,如 Walmart、Paypal、Microsoft、Yahoo 都在使用 NodeJS 来构建应用程序。 NodeJS 使用 JavaScript,因此大多数公司都将前端和后端团队组合成一个单元。
NodeJS的应用: NodeJS应该优先构建:
- 实时聊天,
- 复杂的单页应用程序,
- 实时协作工具,
- 流媒体应用
- 基于 JSON API 的应用程序
安装 Node 并使用它:
- 使用网站:
1.您可以访问链接下载节点并下载LTS版本。
2.安装节点后,您可以使用命令在命令提示符中检查您的节点版本..
~ $node --version
3. 之后,您可以创建一个文件夹并在此处添加一个文件,例如 app.js。要运行此文件,您需要执行命令...
first app $node app.js
4. 节点模块:有一些内置模块可用于创建应用程序。一些流行的模块是 - OS、fs、事件、HTTP、URL,然后您可以使用这些行将这些模块包含在您的文件中。
var fs = require('fs');
5. 这是一个如何包含 HTTP 模块来构建服务器的示例……
javascript
var http = require('http');
// Create a server object:
http.createServer(function (req, res) {
// Write a response to the client
res.write('GeeksForGeeks');
// End the response
res.end();
// The server object listens on port 8080
}).listen(8080);
javascript
var events = require('events');
var eventEmitter = new events.EventEmitter();
// Create an event handler:
var myEventHandler = function () {
console.log('Welcome to GeeksforGeeks');
}
// Assign the event handler to an event:
eventEmitter.on('geeks', myEventHandler);
// Fire the 'geeks' event:
eventEmitter.emit('geeks');
这将在端口 8080 上侦听服务器。在命令提示符下运行文件后,它将执行您的文件并在此端口上侦听服务器。您还可以创建自己的模块并将其包含在您的文件中。
- 使用 NPM: NPM 是一个节点包管理器,提供包下载和使用。它包含您在应用程序中需要的所有文件和模块。要安装任何软件包,您需要执行命令...
npm install
这是使用事件模块的示例。
javascript
var events = require('events');
var eventEmitter = new events.EventEmitter();
// Create an event handler:
var myEventHandler = function () {
console.log('Welcome to GeeksforGeeks');
}
// Assign the event handler to an event:
eventEmitter.on('geeks', myEventHandler);
// Fire the 'geeks' event:
eventEmitter.emit('geeks');
因此,这就是您可以从 node 开始并构建自己的应用程序的方式。您可以使用一些节点框架来构建应用程序。一些流行的节点框架是…… Express.js、Socket.io、Koa.js、 Meteor.js、Sail.js 。