Nodejs es un increíble herramienta que nos permite usar javascriptJavaScript es un lenguaje de programación que funciona en el lado del cliente y con el que las webs pueden ser más funcionales. Incorporación en código HTML El código JavaScript puede ser incrustado en las páginas HTML, para que adquieran funcionalidad. Existen varias opciones. Puede estar entre las etiquetas <SCRIPT> y </SCRIPT>, puede estar contenido en un archivo externo, puede ser un parámetro de las etiquetas HTML, y puede estar más más allá del navegadorUn navegador (además: browser) es una herramienta informática que te permite ver documentos y datos y navegar por la red. Los navegadores pueden mostrar distintos tipos de recursos de información; principalmente documentos HTML, a pesar de todo, además son posibles otros tipos de archivos y contenido multimedia, como PDF, JPEG, MPEG, GIF o el lenguaje de meta marcado. A través el uso de complementos especiales y la configuración respectivo, los más.
– A qué te refieres con eso?
Según su web oficial Nodejs es:
“es un entorno de ejecución para JavaScript construido con el motor de JavaScript V8 de Chrome.”
Seguro te preguntaras algo como… Y que quiere decir esto?
Bueno veras, en el pasado javascript no era ni tan genial, ni tan abierto como lo es ahora. Javascript en su concepción fue desarrollado originalmente por Brendan Eich para netScape y estaba estrictamente ligado a los navegadores(browsers).
No fue sino hasta 2009 después de que Google dio al mundo su navegador Google Chrome que liberó a javascript de su prisión web gracias a su motor de JavaScript V8.
– Y que es el motor V8? (suena a bebida energética)
El motor es el softwareConcepto de Software¿Qué es el Software y cuál es su función?Un Software es la parte lógica, o más bien el soporte lógico, de cualquier sistema de tipo informático. Sea un PC, un teléfono teléfono celular o inclusive una tablet, es todo aquel programa que se ejecuta en él gracias a la coordinación de la parte física, es decir, el hardware, para llevar adelante alguna tarea concretamente o un recopilatorio de más que interpreta el código JavaScript y que a su vez, ejecuta un script acorde a las instrucciones dadas. Todos los navegadoresConcepto de Navegadores¿Qué son los Navegadores?Los Navegadores son herramientas informáticas que utilizamos para, normalmente, navegar por Internet y visitar cualquier página web, al mismo tiempo de para hacer otras tareas como ver documentos, observar vídeos o reproducir contenido multimedia de cualquier tipo. Son un tipo de software sencillamente usual y bastante utilizado hoy en día.Insistimos en que es algo que se utiliza con mucha frecuencia, puesto que moverse por Internet más web tienen un motor de JavaScript, Safari usa JavaScriptCore, FireFox usa SpiderMonkey, Microsoft Edge usa Chakra y en este caso Google Chrome con V8, que también es en parte el motor de Nodejs.
Recurso de Rainer hahnekamp
El lanzamiento del V8 marcó un momento crucial en la historia de los motores. V8 reemplazó la relativamente lenta interpretación de JavaScript del navegador.
La razón detrás de esta mejora tan grande radica principalmente en la combinación de intérpreteLos intérpretes son programas que, a diferencia de un compilador, no leen todo el código primero como un todo, sino que leen cada línea del programa fuente de forma separada y la ejecutan de forma directa en la plataforma sin traducir primero el código. Por ende, cada análisis se produce durante la ejecución del programa. Java, por ejemplo, usa intérpretes. Antecedentes El valor de los intérpretes es que un programa más y compiladorUn compilador es un programa que traduce código fuente escrito en un lenguaje de alto nivel como Java, a un lenguaje legible por la máquina llamado código objeto, lenguaje de destino o inclusive lenguaje ensamblador. De este modo, un compilador podría llamarse traductor, pero sus tareas son más amplias porque, como parte de la compilación del programa, además informa de errores al leer el código. Cómo funciona Un compilador siempre más. Hoy en día, los cuatro motores utilizan esta técnica. El intérprete ejecuta el código fuenteEl código fuente es un programa de PC o página web que se convierte en un lenguaje que es leído por una máquina y se recoge en imagen y función. El código fuente es una parte importante del SEO porque determina la correcta ejecución de una página web. La optimización del código fuente es por ende parte del SEO técnico. Código fuente para páginas web Mientras que el código fuente más casi de inmediato. El compilador traduce el código fuente en código máquina que el sistema del usuario ejecuta de manera directa.
Tal vez te preguntes…
– A fin de cuentas tiene todo esto que ver con Nodejs?
Bueno, la relación es que un día Ryah Dahll, el creador de Nodejs, buscando una manera de crear servidores web que consideren las necesidades de la web actual, es decir una enorme cantidad de usuarios y todos accediendo en tiempo ral, encontró el motor V8 de google y lo hizo funcionar fuera del navegador, es decir en el sistema operativo, y desde este momento, nace Nodejs. y El cual lo presenta en la JsConf, una conferenciaConcepto de Conferencia¿Qué es una Conferencia?Una conferencia es toda aquella reunión, normalmente con un alto grado de participantes y de espectadores, en la que consiste en realizar un debate sobre determinados puntos, impulsar una marca o abordar un tema para desarrollarlo desde el conocimiento y con distintos perspectivas que enriquezcan el discurso. Es uno de los medios principales con los que las grandes firmas dan a conocer sus nuevas estrategias, más de Javascript.
Nodejs es especial porque según su web oficial:
“utiliza un modelo de I/O dirigida a eventos no bloqueantes que hace que sea ligero y eficiente, ideal para aplicaciones en tiempo real con intenso intercambio de datos a través de dispositivos distribuidos”
Como verás no es un concepto nada simple, más aún si estás empezando, así que empezaré detallando que es Nodejs:
Nodejs Es un entorno de ejecución de javascript que está construido con el motor v8 de google chrome que es un modelo de operaciones sin bloqueo y orientado a eventos.
bueno esto tampoco ayuda mucho, pero permíteme explicarte a partir de este enunciado.
Nodejs se basa en el motor V8 que Google creó para interpretar javascript en Chrome, Aprovechando este motor Nodejs, compila el código JavaScript a lenguaje nativo, además de tener una gran velocidad de ejecución, la simplicidad de la interfaz que Nodejs nos provee es tan increíble, que iniciar un servidorLos servidores son ordenadores centrales y potentes dentro del campo de la tecnología de la información que procesan y proporcionan software y archivos en una red. Desde el punto de vista de un cliente, varios ordenadores en una red pueden ponerse en contacto con el servidor central para conseguir la información solicitada. En la arquitectura cliente-servidor, el servidor puede ser un software que proporciona un servicio y se ejecuta en más nos lleva menos de 20 líneas de código, por ejemplo:
// Se carga el módulo de HTTP
var http = require("http");
// Creación del servidor HTTP, y se define la escucha
// de peticiones en el puerto 8000
http.createServer(function(request, response) {
// Se define la cabecera HTTP, con el estado HTTP (OK: 200) y el tipo de contenido
response.writeHead(200, {'Content-Type': 'text/plain'});
// Se responde, en el cuerpo de la respuesta con el mensaje "Hello World"
response.end('Hola Mundo!n');
}).listen(8000);
// Se escribe la URL para el acceso al servidor
console.log('Servidor en la url http://127.0.0.1:8000/');
La particularidad de Nodejs reside en una pieza denominada EventLoop.
Veras Nodejs surge como respuesta a una problemática con la programaciónConcepto de Programación¿Qué es la Programación?La Programación es el procedimiento al que se recurre para crear algún tipo de aplicación o software, para materializar un concepto o proyecto que requiere de la utilización de un lenguaje informático para poder llevarse a cabo. Es algo que está absolutamente ligado a la figura del programador, y que cada vez está cobrando más relevancia dentro del mundo del marketing.Decimos que tanto esta figura más secuencial tradicional. En lenguajes como Java, C++ o C#, que se basan en hilos de ejecución, hay un máximo teórico que viene dado por la memoria que consume cada hilo de ejecución en la máquina en la que se despliega.
Nodejs en cambio es single thread(o de un solo hilo), este hilo de ejecución única se denomina EventLoop y su función es ejecutar código Javascript el cual es por naturaleza .
Recurso de Paradigma digital
Ante la llegada de operaciones de entrada/salida(Input/Output) delega la ejecución de las mismas en subsistemas específicamente preparados para que se procesen en segundo plano.
De esta forma no se bloquea el hilo de ejecución (non-blocking), mientras el EventLoop apunta la función que se ejecutará una vez que ese procesamiento offline termine (callback).
Una forma sencilla de entender qué es el EventLoop es imaginar que el sistema es como un restaurante, en el que tenemos un único trabajador: un camarero. Nuestro camarero se encarga de sentar a la gente en la mesa y tomarles la orden de comida (tarea asíncrona), si el camarero tuviese que preparar la comida estaríamos bloqueándole para que pudiese atender a la siguiente mesa.
En lugar de eso, el camarero manda la orden a la cocina (threadPool), en la que uno de los cocineros la prepara. Cuando la comida esté lista, llamará al camarero para que la lleve a la mesa, nuestro camarero tendrá apuntada la correspondencia entra la comida y el número de mesa para saber el sitio al que tiene entregar la comida (callback).
Espero que esta introducción haya sido suficiente para causar interés en aprender más sobre Nodejs. Para obtener más información y ejemplos de aplicaciones en esta plataforma pueden visitar la documentación oficial de Nodejs.





