Usando abstracciones para manejar 
resultados que no están disponibles en el 
contexto actual.
Eventos en javascript 
 
 Gran parte de las operaciones realizadas por 
nuestros scripts tienen como base un evento. 
 Estos eventos pueden ser generados por el usuario o 
por nuestros scripts 
 Eventos son puntos de inicio para realizar 
operaciones asíncronas, evitando problemas de 
performance y dando dinamismo nuestra aplicación 
web
Programación Asíncrona 

¿Complicaciones? 
 
 Gestionar llamadas que depende del resultado de 
otras. 
 Revisar diseño de nuestros scripts 
 Uso de patrones 
 Flujos de ejecución que dependen de multiples 
llamadas ajax. 
 Uso de patrones 
 Banderas (ugh)
jQuery Deferred 
 
 Un objeto deferred (promise) representa un 
resultado que puede aún no estar disponible 
 Los estados que puede tener un objeto deferred son: 
 Pending 
 Rejected 
 Resolve 
 Estos estados son resultado de las funciones: 
 Resolve 
 Reject
Enlazar objetos deferred 
dependientes 
 
 Metodo Then (antes pipe) 
 Provee un mecanismo para tomar los valores 
resultado de un objeto deferred, modificarlos de ser 
necesario, y usarlos como parámetros para un nuevo 
objeto 
 “Method cascading”
Llamadas ajax paralelas 
 
 Si necesitamos del resultado de 2 o más llamados 
ajax, podemos utilizar la función when 
 When devuelve un nuevo objeto deferred cuyo 
status sera “resuelto” si y solo si, todos las objetos 
deferred asociados a ella poseen ese status

JQuery Deferred

  • 1.
    Usando abstracciones paramanejar resultados que no están disponibles en el contexto actual.
  • 2.
    Eventos en javascript   Gran parte de las operaciones realizadas por nuestros scripts tienen como base un evento.  Estos eventos pueden ser generados por el usuario o por nuestros scripts  Eventos son puntos de inicio para realizar operaciones asíncronas, evitando problemas de performance y dando dinamismo nuestra aplicación web
  • 3.
  • 4.
    ¿Complicaciones?  Gestionar llamadas que depende del resultado de otras.  Revisar diseño de nuestros scripts  Uso de patrones  Flujos de ejecución que dependen de multiples llamadas ajax.  Uso de patrones  Banderas (ugh)
  • 5.
    jQuery Deferred   Un objeto deferred (promise) representa un resultado que puede aún no estar disponible  Los estados que puede tener un objeto deferred son:  Pending  Rejected  Resolve  Estos estados son resultado de las funciones:  Resolve  Reject
  • 6.
    Enlazar objetos deferred dependientes   Metodo Then (antes pipe)  Provee un mecanismo para tomar los valores resultado de un objeto deferred, modificarlos de ser necesario, y usarlos como parámetros para un nuevo objeto  “Method cascading”
  • 7.
    Llamadas ajax paralelas   Si necesitamos del resultado de 2 o más llamados ajax, podemos utilizar la función when  When devuelve un nuevo objeto deferred cuyo status sera “resuelto” si y solo si, todos las objetos deferred asociados a ella poseen ese status