Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Asynchronismes en Javascript

1,041 views

Published on

Vous adorez JavaScript, mais celui-ci vous donne du fil à retordre lorsqu'il s'agit de lancer des traitements asynchrones ?

Au cours de cette présentation nous verrons ensemble plusieurs exemples concis de traitements asynchrones mettant en oeuvre les promesses et la programmation fonctionnelle.

Published in: Software
  • Be the first to comment

  • Be the first to like this

Asynchronismes en Javascript

  1. 1. @flornt#AsynchronismesJS Asynchronismes en JavaScript Florent Le Gall @flornt Xebia
  2. 2. @flornt#AsynchronismesJS L’asynchronisme en JS • Les callbacks : À éviter! • “Pyramid of doom” • Gestion des erreurs difficile
  3. 3. @flornt#AsynchronismesJS L’asynchronisme en JS • Les promesses: • Permet de chaîner les appels en renvoyant une autre promesse • Et de gérer les erreurs simplement • Pur JS : Disponible partout
  4. 4. @flornt#AsynchronismesJS L’asynchronisme en JS • Yield • Détourne la sémantique des générateurs pour gérer l’asynchronisme • ECMAScript 6 Only • Pas de traitement en parallèle !
  5. 5. @flornt#AsynchronismesJS Gérer les promesses • Q.JS • Implémente la spécification Promises A+ • Très populaire en 2014 • Angular introduit une version simplifiée $q
  6. 6. @flornt#AsynchronismesJS Gérer les promesses • BlueBird • Implémente la spécification Promises A+ • Propose une API similaire à celles des promesses ECMA 6 • De meilleurs performances par rapport à Q • Innovations liées à la programmation fonctionnelle
  7. 7. @YourTwitterHandle@YourTwitterHandle@flornt#AsynchronismesJS Live coding ! https://github.com/flegall/asynchronismes
  8. 8. @YourTwitterHandle@YourTwitterHandle@flornt#AsynchronismesJS Conclusion
  9. 9. @flornt#AsynchronismesJS Conclusion • BlueBird est la librairie de gestion de promesses la plus aboutie à ce jour • Les apports fonctionnels se marient plutôt bien avec le JavaScript • Le paramètre concurrency n’est pas un pool de threads
  10. 10. @YourTwitterHandle@YourTwitterHandle@flornt#AsynchronismesJS Q & R

×