SlideShare una empresa de Scribd logo
JavaScript Async
Veamos lo básico y juguemos un poco con JavaScript
Juan Miguel Alcalá
JavaScript - un poco de historia -
• Ideado para ser incorporado en
Netscape Navigator como una
forma de dotar de interactividad
a páginas html.
• Microsoft crea su propia versión
llamada Jscript y la incorpora en
Internet Explorer 3
• Sun se acerca a Ecma, a fin de
que su versión se convirtiera en
el estándar a utilizar (Ecma-262)
Single Thread Process?
• JavaScript es un lenguaje “single-thread”
• Solo posee un hilo de ejecución en el cual todo el código es procesado.
• Si el bloque de código a ejecutar es demasiado grande o muy complejo puede
causar que nuestra aplicación se vuelva inutilizable.
• JavaScript permite ejecutar código de manera asíncrona, para ellos se
basa en el uso de eventos.
• El código basado en eventos es más simple que el código multithread y posee
menos dependencias
JavaScript asíncrono
• Callbacks
• El elemento base de la
programación asíncrona en
JavaScript
• Observer Pattern
• Messaging
(publish – Suscription)
• Promises
• Finite State Machines
Event loop
• Stack
• Las llamadas a funciones crean los
frames.
• Heap
• El área en la memoria donde se
almacenan los objetos
• (Message) Queue
• Contiene una lista de “mensajes” a
procesar
• Event Loop
Event Loop
Web Workers
• Su especificación pertenece al estándar de Html 5
• No están definidos en el estándar Ecma
• Permite el uso de multithread
• Cada Web Worker se ejecuta en un nuevo thread; es independiente
del flujo de ejecución principal
• No tiene acceso al DOM, el objeto Window, la consola, etc.
• Puede realizar operaciones ajax
• Se comunica con el Thread principal mediante mensajes
Web Workers -Event Loop-
¡GRACIAS!
www.scio.com.mx

Más contenido relacionado

PDF
Introducción a Node.js
PPTX
Introduccion a Node.js
KEY
Introducción a NodeJS
PPTX
Introduccion a Nodejs
PPTX
Presentación internet kata
PDF
NodeJS y MongoDB
PPTX
Node JS (Francisco Cerdas)
Introducción a Node.js
Introduccion a Node.js
Introducción a NodeJS
Introduccion a Nodejs
Presentación internet kata
NodeJS y MongoDB
Node JS (Francisco Cerdas)

La actualidad más candente (20)

PPTX
¿Que es NPM y Modulos?
PDF
PDO: Capa de abstracción de base de datos con PHP
PDF
Curso node.js
PDF
Introducción a Node.js
PDF
Introducción a NodeJS
PPTX
Microservicios con Spring Boot
ODP
Taller de optimizacion de servidores web tipo LAMP
PDF
Conociendo Griffon a Fondo
DOCX
Vlans Privadas
PDF
Typo3: El CMS que vino del frío
PDF
El uso correcto de MySQLi
ODP
Node.js - Eventos para Todos
PPT
Nodejs.introduccion
PDF
Despliegue de aplicaciones OS en entornos Cloud Computing con Bitnami- OpenEx...
PPTX
Password! Password! Password!
PDF
Dockeriza tu entorno de desarrollo
PPTX
SignalR is coming talk slides
ODP
Gestionando tu infraestructura con Ansible
PPTX
Dn12 u3 a10_rcla.
DOCX
Mapa conceptual tutoria_3
¿Que es NPM y Modulos?
PDO: Capa de abstracción de base de datos con PHP
Curso node.js
Introducción a Node.js
Introducción a NodeJS
Microservicios con Spring Boot
Taller de optimizacion de servidores web tipo LAMP
Conociendo Griffon a Fondo
Vlans Privadas
Typo3: El CMS que vino del frío
El uso correcto de MySQLi
Node.js - Eventos para Todos
Nodejs.introduccion
Despliegue de aplicaciones OS en entornos Cloud Computing con Bitnami- OpenEx...
Password! Password! Password!
Dockeriza tu entorno de desarrollo
SignalR is coming talk slides
Gestionando tu infraestructura con Ansible
Dn12 u3 a10_rcla.
Mapa conceptual tutoria_3
Publicidad

Destacado (20)

PDF
Defesa de Delúbio Soares - Mensalão
PPT
Sección 3 La biblioteca virtual
PDF
Aktuální katalog DUBEN 2016 Comfor
PDF
Ficj emag janvier 2014
PDF
HCR's method of concentric cones (solid angle subtended by a torus at any poi...
PDF
Amicus VIC Capability Statement 2015_email
PPT
Preterite categories holmberg
PPT
Presentación Comercial Zino3
PDF
Puntos de Dedicacion
PPTX
Identity Compass
PPTX
Virus imformaticos
PDF
15 Guerra Civil
PPT
3 Pasos para Mercadear Servicios Profesionales en Internet
PDF
IT Application Outsourcing in Banking: Market trends, evolving service provid...
PPT
Catholic health care ethics ch 1, 2
PPTX
Projecte els diners. internet
PPTX
ngCore engine for mobage platform
PDF
Tierra de diatomea
PDF
Conclusiones y recomendaciones Grupo FIDE 2016 por un nuevo marco legislativo...
PPTX
Bronquiolitis
Defesa de Delúbio Soares - Mensalão
Sección 3 La biblioteca virtual
Aktuální katalog DUBEN 2016 Comfor
Ficj emag janvier 2014
HCR's method of concentric cones (solid angle subtended by a torus at any poi...
Amicus VIC Capability Statement 2015_email
Preterite categories holmberg
Presentación Comercial Zino3
Puntos de Dedicacion
Identity Compass
Virus imformaticos
15 Guerra Civil
3 Pasos para Mercadear Servicios Profesionales en Internet
IT Application Outsourcing in Banking: Market trends, evolving service provid...
Catholic health care ethics ch 1, 2
Projecte els diners. internet
ngCore engine for mobage platform
Tierra de diatomea
Conclusiones y recomendaciones Grupo FIDE 2016 por un nuevo marco legislativo...
Bronquiolitis
Publicidad

Similar a JavaScript Async | Juan Miguel Alcalá (20)

PPTX
Introducción a Javascript I
PDF
Why Apache Flink is better than Spark by Rubén Casado
PDF
SG 09 Patrones de Integración Empresarial Apache Camel
PPTX
Practica03 desarrolloweb
PPSX
Presentacion Javascript
PDF
20170405 - Ecosistema Javascript
PPTX
Desarrollo modermo de aplicaciones web
PPTX
MEAN ¿otro buzzword?
PDF
Gwt I - entendiendo gwt
PDF
Gwt seminario java_hispano_manolocarrasco
PPTX
EQUIPO 2,2A PARTE DE LAS AGUILAS
PDF
Java basico 2
PDF
Java basico 2
PPTX
Net Maui Blazor Jornada ASP Net en Español.pptx
PPTX
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
PPTX
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
PDF
Java basico
PDF
Java basico
PPTX
Grupo Nº6: Netscape
PPTX
Lenguaje de programción en internet
Introducción a Javascript I
Why Apache Flink is better than Spark by Rubén Casado
SG 09 Patrones de Integración Empresarial Apache Camel
Practica03 desarrolloweb
Presentacion Javascript
20170405 - Ecosistema Javascript
Desarrollo modermo de aplicaciones web
MEAN ¿otro buzzword?
Gwt I - entendiendo gwt
Gwt seminario java_hispano_manolocarrasco
EQUIPO 2,2A PARTE DE LAS AGUILAS
Java basico 2
Java basico 2
Net Maui Blazor Jornada ASP Net en Español.pptx
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
Java basico
Java basico
Grupo Nº6: Netscape
Lenguaje de programción en internet

Más de Scio Consulting (19)

PPTX
When is a custom app the right choice?
PPTX
Conociendo ReactJs . Scio Talks
PPTX
La Labor del Analista de Calidad en el Desarrollo de Software
PPTX
El buen desarrollador - Julio Orozco
PPTX
Scio Talks - Sistemas Distribuidos con C#
PPTX
Fun with DSL
PPTX
Webinar User Experience Fundamentals
PPTX
Autocomplete con AngularJs
PPTX
Ng autocomplete
PPTX
El curioso caso del Geek y la máquina virtual
PDF
Aplicaciones Móviles Híbridas
PPTX
Jugando con LinQ
PPTX
JQuery Deferred
PPTX
Behavior Driven Development (BDD)
PPTX
ScioTalks | Coverage Based Testing
PPTX
Scio Talks - Jugando con LinQ
PPTX
Scio Talks Gobierna el Frontend parte2
PPTX
¿Porqué la User Experience / User Interface es Importante?
PPTX
Scio Talks - Gobierna el Frontend 1er parte
When is a custom app the right choice?
Conociendo ReactJs . Scio Talks
La Labor del Analista de Calidad en el Desarrollo de Software
El buen desarrollador - Julio Orozco
Scio Talks - Sistemas Distribuidos con C#
Fun with DSL
Webinar User Experience Fundamentals
Autocomplete con AngularJs
Ng autocomplete
El curioso caso del Geek y la máquina virtual
Aplicaciones Móviles Híbridas
Jugando con LinQ
JQuery Deferred
Behavior Driven Development (BDD)
ScioTalks | Coverage Based Testing
Scio Talks - Jugando con LinQ
Scio Talks Gobierna el Frontend parte2
¿Porqué la User Experience / User Interface es Importante?
Scio Talks - Gobierna el Frontend 1er parte

JavaScript Async | Juan Miguel Alcalá

  • 1. JavaScript Async Veamos lo básico y juguemos un poco con JavaScript Juan Miguel Alcalá
  • 2. JavaScript - un poco de historia - • Ideado para ser incorporado en Netscape Navigator como una forma de dotar de interactividad a páginas html. • Microsoft crea su propia versión llamada Jscript y la incorpora en Internet Explorer 3 • Sun se acerca a Ecma, a fin de que su versión se convirtiera en el estándar a utilizar (Ecma-262)
  • 3. Single Thread Process? • JavaScript es un lenguaje “single-thread” • Solo posee un hilo de ejecución en el cual todo el código es procesado. • Si el bloque de código a ejecutar es demasiado grande o muy complejo puede causar que nuestra aplicación se vuelva inutilizable. • JavaScript permite ejecutar código de manera asíncrona, para ellos se basa en el uso de eventos. • El código basado en eventos es más simple que el código multithread y posee menos dependencias
  • 4. JavaScript asíncrono • Callbacks • El elemento base de la programación asíncrona en JavaScript • Observer Pattern • Messaging (publish – Suscription) • Promises • Finite State Machines
  • 5. Event loop • Stack • Las llamadas a funciones crean los frames. • Heap • El área en la memoria donde se almacenan los objetos • (Message) Queue • Contiene una lista de “mensajes” a procesar • Event Loop
  • 7. Web Workers • Su especificación pertenece al estándar de Html 5 • No están definidos en el estándar Ecma • Permite el uso de multithread • Cada Web Worker se ejecuta en un nuevo thread; es independiente del flujo de ejecución principal • No tiene acceso al DOM, el objeto Window, la consola, etc. • Puede realizar operaciones ajax • Se comunica con el Thread principal mediante mensajes