JavaScript un lenguaje para el Enterprise

Es en serio?

Solo lo dices porque eres un desarrollador de JavaScript


JavaScript es un lenguaje de juguete


No es un lenguaje compilado


Es un lenguaje lento


No es un lenguaje tipado


Trabaja en un solo hilo


La Transformación de JavaScript

Breve historia

- Creado en 10 días por Brendan Eich, un empleado de Netscape en 1995
- Nombrado inicialmente Mocha, luego renombrado a LiveScript y finalmente renombrado a JavaScript
- Diseñado para ser el compañero de Java
- Estandarizado por ECMA International en 1996
JavaScript - lingua franca en la web

Luego de múltiples acercamientos con diferentes tecnologías para implementar aplicaciones que emularan el comportamiento de una aplicación de escritorio en una página web, JavaScript emerge como el estándar de facto al ser el único lenguaje ejecutable por defecto en un navegador.
Node.js - reloading JavaScript

Ryan Dahl en 2009 uso el motor de JavaScript de Google Chrome (v8), para ejecutar JavaScript en el lado del servidor permitiendo acceso a todos los recursos de este y abrió todo un mundo de posibilidades para el lenguaje.

Qué es exactamente Node.js?

Una visión resumida

JavaScript VM (V8) + Event Loop (Libuv) + API de bajo nivel para I/O (C++)
Detallado tecnicamente


Programación asíncrona - Event Loop


Principales usos

- APIs (REST, GraphQL, gRPC ...)
- CLIs (Command Line Interface)
- Aplicaciones de cliente y servidor
- Aplicaciones de tiempo real
En resumen, Node.js le permitió a JavaScript salir del navegador y competir en el backend con lenguajes como Java y C#
Qué hace a JavasCript diferente?

Algunas diferencias
- Interpretado (no compilado *)
- Herencia por prototipos
- Tipos de variables dinámicos
- Uso de streams
- ASÍNCRONO
- Uso dinámico de memoria

Asincronía
console.log('primero');
// Esta instrucción se ejecutará en su propio tiempo
setTimeout(function () {
console.log('segundo');
},100);
console.log('tercero');
El Prototipo

Usos de javascript en la actualidad

Single Page Applications


Aplicativos móviles


Uso en dispositivos de hardware


Electron - JavaScript en el escritorio


Electron - JavaScript en el escritorio


Realidad aumentada y realidad virtual


Machine learning


AI - Aplicaciones con LLMs


El Ecosistema de JavaScript

NPM



GitHub


GitHub


StackOverflow


Adopción en el enterprise

Compañías usando Node


Compañías usando Node


PayPal


Netflix


Walmart


Uber


Proceso de adopción


Cómo aprender JavaScript?

Recursos recomendados
- Codecademy: https://www.codecademy.com/learn/introduction-to-javascript
- Freecodecamp:
https://www.freecodecamp.org/espanol/news/curso-de-javascript-desde-cero-aprende-javascript/ - Mozilla Developer Network:
https://developer.mozilla.org/es/docs/Learn/JavaScript

Aprende jugando
- Coding game:
https://www.codingame.com/start/ - Codecombat:
https://codecombat.com/ - JSDares:
https://jsdares.com/ - Codewars:
https://www.codewars.com/

Unete a MedellinJS

Asiste a CityJS Medellin


Gracias


JavaScript un lenguaje para el Enterprise
By Adrián Estrada
JavaScript un lenguaje para el Enterprise
- 1,467