Diferencias entre el nodo y el navegador

En qué se diferencia la escritura de una aplicación JavaScript en Node.js de la programación para la Web dentro del navegador

Tanto el navegador como el nodo utilizan JavaScript como lenguaje de programación.

La creación de aplicaciones que se ejecutan en el navegador es algo completamente diferente a la creación de una aplicación Node.js.

A pesar de que siempre es JavaScript, existen algunas diferencias clave que hacen que la experiencia sea radicalmente diferente.

Como desarrollador de frontend que usa ampliamente Javascript, las aplicaciones de Node traen consigo una gran ventaja: la comodidad de programar todo, el frontend y el backend, en un solo idioma.

Tiene una gran oportunidad porque sabemos lo difícil que es aprender completa y profundamente un lenguaje de programación, y al usar el mismo lenguaje para realizar todo su trabajo en la web, tanto en el cliente como en el servidor, está en una posición única de ventaja.

Lo que cambia es el ecosistema.

En el navegador, la mayor parte del tiempo lo que está haciendo es interactuar con elDOM, u otroAPI de plataforma webcomo Cookies. Esos no existen en Node, por supuesto. No tienes eldocument,windowy todos los demás objetos que proporciona el navegador.

Y en el navegador, no tenemos todas las buenas API que Node.js proporciona a través de sus módulos, como la funcionalidad de acceso al sistema de archivos.

Otra gran diferencia es que en Node.js controlas el entorno. A menos que esté creando una aplicación de código abierto que cualquiera pueda implementar en cualquier lugar, sabe en qué versión de Node ejecutará la aplicación. En comparación con el entorno del navegador, donde no puede darse el lujo de elegir qué navegador usarán sus visitantes, esto es muy conveniente.

Esto significa que puede escribir todos losES6-7-8-9JavaScript que admite su versión de Node.

Dado que JavaScript se mueve tan rápido, pero los navegadores pueden ser un poco lentos y los usuarios un poco lentos para actualizar, a veces en la web, no puede usar versiones anteriores de JavaScript / ECMAScript.

Puede usar Babel para transformar su código para que sea compatible con ES5 antes de enviarlo al navegador, pero en Node, no lo necesitará.

Otra diferencia es que Node usa elSistema de módulo CommonJS, mientras que en el navegador estamos empezando a ver elMódulos ESestándar que se está implementando.

En la práctica, esto significa que, por el momento, utilizarequire()en nodo yimporten el navegador.

Descarga mi gratisManual de Node.js


Más tutoriales de nodos: