Tutorial de Node.js para principiantes: aprenda paso a paso en 3 días
Introducción a Node.js
La aplicación web moderna realmente ha recorrido un largo camino a lo largo de los años con la introducción de muchos marcos populares como bootstrap, Angular JS, etc. Todos estos marcos se basan en el popular JavaGuión marco de referencia.
Pero cuando se trataba de desarrollar aplicaciones basadas en servidor, había una especie de vacío, y aquí es donde Node.js entró en escena.
Node.js también se basa en el JavaMarco de scripts, pero se utiliza para desarrollar aplicaciones basadas en servidor. A lo largo del tutorial, analizaremos Node.js en detalle y veremos cómo podemos usarlo para desarrollar aplicaciones basadas en servidor.
Programa de estudios de Node.js
Conceptos básicos de Node.js para principiantes
👉 Lessen 1 | Descargar e instalar Node.js — Cómo descargar e instalar Node.js y NPM en Windows |
👉 Lessen 2 | Tutorial de NPM de Node.js — Crear, publicar, ampliar y gestionar |
👉 Lessen 3 | Crear un servidor web HTTP en Node.js — Tutorial con ejemplo de código |
¡Cosas avanzadas de Node.js!
👉 Lessen 1 | Tutorial de Node.js Express Framework — Aprende en 10 minutos |
👉 Lessen 2 | Node.js MongoDB Tutorial — Una guía completa con ejemplos |
👉 Lessen 3 | Tutorial de promesa de Node.js — Una guía completa para el JavaPromesas del guión |
👉 Lessen 4 | Tutorial de promesas de Bluebird — Una guía completa de las promesas de Bluebird |
👉 Lessen 5 | Node.js Generators - Qué es, devoluciones de llamada frente a Node.js Generators |
👉 Lessen 6 | Tutorial de transmisiones de Node js — Flujo de archivos, tuberías |
👉 Lessen 7 | Tutorial de pruebas unitarias de Node.js con Jasmine — Una guía completa |
👉 Lessen 8 | Tutorial de GraphQL - ¿Qué es GraphQL? Aprende con el ejemplo |
¡Conozca la diferencia!
👉 Lessen 1 | GraphQL frente a DESCANSO - ¿Cual es la diferencia? |
👉 Lessen 2 | Node.Js frente a AngularJS - Conozca la diferencia |
👉 Lessen 3 | Node.js frente a Python - ¿Cual es la diferencia? |
Preguntas de la entrevista y tutorial de Node.js PDF
👉 Lessen 1 | Preguntas de la entrevista de Node.js — Las 25 preguntas y respuestas principales de la entrevista de Node.js |
👉 Lessen 2 | Tutorial de Node.js en PDF — Descargue el PDF del tutorial de Node.js para principiantes |
¿Qué es Node.js?
Node.js es un entorno de ejecución multiplataforma de código abierto que se utiliza para el desarrollo de aplicaciones web del lado del servidor. Las aplicaciones Node.js están escritas en JavaScript y se puede ejecutar en una amplia variedad de sistemas operativos.
Node.js se basa en una arquitectura basada en eventos y una API de entrada/salida sin bloqueo que está diseñada para optimizar el rendimiento y la escalabilidad de una aplicación para aplicaciones web en tiempo real.
Durante un largo período de tiempo, todos los marcos disponibles para el desarrollo web se basaron en un modelo sin estado. Un modelo sin estado es aquel en el que los datos generados en una sesión (como información sobre la configuración del usuario y los eventos que ocurrieron) no se mantienen para su uso en la siguiente sesión con ese usuario.
Se ha trabajado mucho para mantener la información de la sesión entre las solicitudes de un usuario. Pero con Node.js, finalmente existe una manera de que las aplicaciones web tengan conexiones bidireccionales en tiempo real, donde tanto el cliente como el servidor pueden iniciar la comunicación, lo que les permite intercambiar datos libremente.
¿Por qué utilizar Node.js?
Analizaremos el valor real de Node.js en los próximos capítulos, pero ¿qué es lo que hace que este marco sea tan famoso? A lo largo de los años, la mayoría de las aplicaciones se basaron en un marco de solicitud-respuesta sin estado. En este tipo de aplicaciones, depende del desarrollador asegurarse de que se implementó el código correcto para garantizar que se mantuvo el estado de la sesión web mientras el usuario trabajaba con el sistema.
Pero con las aplicaciones web Node.js, ahora puedes trabajar en tiempo real y tener comunicación bidireccional. El estado se mantiene y el cliente o el servidor pueden iniciar la comunicación.
Características de Node.js
Veamos algunas de las características clave de Node.js.
- La entrada/salida asincrónica basada en eventos facilita el manejo simultáneo de solicitudes: este es probablemente el punto de venta más importante de Node.js. Esta característica básicamente significa que si Node recibe una solicitud para alguna operación de entrada/salida, ejecutará la operación en segundo plano y continuará procesando otras solicitudes.
Esto es bastante diferente de otros lenguajes de programación. Un ejemplo simple de esto se proporciona en el siguiente código.
var fs = require('fs'); fs.readFile("Sample.txt",function(error,data) { console.log("Reading Data completed"); });
- El fragmento de código anterior analiza la lectura de un archivo llamado Sample.txt. En otros lenguajes de programación, la siguiente línea de procesamiento solo ocurriría una vez que se haya leído el archivo completo.
- Pero en el caso de Node.js, la fracción importante de código a tener en cuenta es la declaración de la función ("función (error, datos)"). Esto se conoce como función de devolución de llamada.
- Entonces, lo que sucede aquí es que la operación de lectura del archivo comenzará en segundo plano. Y otros procesos pueden ocurrir simultáneamente mientras se lee el archivo. Una vez que se completa la operación de lectura del archivo, se llamará a esta función anónima y se escribirá el texto "Lectura de datos completada" en el registro de la consola.
- Nodo usa el V8 JavaMotor de ejecución de scripts, el que utiliza Google Chrome. El nodo tiene una envoltura sobre el JavaMotor de script que hace que el motor de ejecución sea mucho más rápido y, por lo tanto, el procesamiento de solicitudes dentro de Node también se vuelve más rápido.
- Manejo de solicitudes simultáneas: otra funcionalidad clave de Node es la capacidad de manejar conexiones simultáneas con una sobrecarga mínima en un solo proceso.
- La biblioteca Node.js utiliza JavaScript: este es otro aspecto importante del desarrollo en Node.js. Una parte importante de la comunidad de desarrollo ya está bien versada en JavaScript y, por lo tanto, el desarrollo en Node.js se vuelve más fácil para un desarrollador que conoce JavaScript.
- Existe una comunidad activa y vibrante para el marco Node.js. Gracias a la comunidad activa, siempre hay actualizaciones clave disponibles para el marco. Esto ayuda a mantener el marco siempre actualizado con las últimas tendencias en desarrollo web.
¿Quién usa Node.js?
Node.js es utilizado por muchas grandes empresas. A continuación se muestra una lista de algunos de ellos.
- Paypal: muchos sitios dentro de Paypal también han comenzado la transición a Node.js.
- LinkedIn: LinkedIn está utilizando Node.js para impulsar su Móvil Servidores, que alimentan el iPhone, Androidy productos web móviles.
- Mozilla ha implementado Node.js para soportar las API del navegador que tiene 500 millones de instalaciones.
- eBay aloja su servicio API HTTP en Node.js
Cuándo usar Node.js
Node.js es mejor para su uso en aplicaciones de streaming o en tiempo real basadas en eventos como
- Aplicaciones de chat
- Servidores de juegos: servidores rápidos y de alto rendimiento que necesitan procesar miles de solicitudes a la vez, entonces este es un marco ideal.
- Bueno para entornos colaborativos: esto es bueno para entornos que gestionan documentos. En un entorno de gestión de documentos, tendrá varias personas que publicarán sus documentos y realizarán cambios constantes al retirar y registrar documentos. Por lo tanto, Node.js es bueno para estos entornos porque el bucle de eventos en Node.js se puede activar cada vez que se modifican documentos en un entorno administrado por documentos.
- Servidores de publicidad: nuevamente, aquí podría tener miles de solicitudes para extraer anuncios del servidor central y Node.js puede ser un marco ideal para manejar esto.
- Servidores de transmisión: otro escenario ideal para usar Node es para servidores de transmisión multimedia en los que los clientes tienen solicitudes para extraer diferentes contenidos multimedia de este servidor.
Node.js es bueno cuando necesitas altos niveles de concurrencia pero menos tiempo de CPU dedicado.
Lo mejor de todo es que, dado que Node.js está construido sobre JavaScript, es más adecuado cuando se crean aplicaciones del lado del cliente que se basan en el mismo marco de JavaScript.
Cuándo no usar Node.js
Node.js se puede utilizar para muchas aplicaciones con diversos propósitos. El único escenario en el que no se debe utilizar es cuando hay tiempos de procesamiento prolongados, que son requeridos por la aplicación.
El nodo está estructurado para ser de un solo subproceso. Si se requiere que una aplicación realice algunos cálculos de larga duración en segundo plano, no podrá procesar ninguna otra solicitud. Como se mencionó anteriormente, Node.js se usa mejor cuando el procesamiento necesita menos tiempo de CPU dedicado.