SlideShare a Scribd company logo
1 of 10
Download to read offline
@flornt#AsynchronismesJS
Asynchronismes en
JavaScript
Florent Le Gall
@flornt
Xebia
@flornt#AsynchronismesJS
L’asynchronisme en JS
• Les callbacks : À éviter!
• “Pyramid of doom”
• Gestion des erreurs
difficile
@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
@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 !
@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
@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
@YourTwitterHandle@YourTwitterHandle@flornt#AsynchronismesJS
Live coding !
https://github.com/flegall/asynchronismes
@YourTwitterHandle@YourTwitterHandle@flornt#AsynchronismesJS
Conclusion
@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
@YourTwitterHandle@YourTwitterHandle@flornt#AsynchronismesJS
Q & R

More Related Content

Viewers also liked

JavaScript pour le développeur Java
JavaScript pour le développeur JavaJavaScript pour le développeur Java
JavaScript pour le développeur Javajollivetc
 
Du JavaScript dans mon projet
Du JavaScript dans mon projetDu JavaScript dans mon projet
Du JavaScript dans mon projetjollivetc
 
Centre culturel tjibaou larabi marwa
Centre culturel tjibaou larabi marwaCentre culturel tjibaou larabi marwa
Centre culturel tjibaou larabi marwaMarwa Larabi
 
XebiCon'16 : Angular2, React, Vue.js - Bien choisir son framework Front-End. ...
XebiCon'16 : Angular2, React, Vue.js - Bien choisir son framework Front-End. ...XebiCon'16 : Angular2, React, Vue.js - Bien choisir son framework Front-End. ...
XebiCon'16 : Angular2, React, Vue.js - Bien choisir son framework Front-End. ...Publicis Sapient Engineering
 
Odoo 10 Helpdesk Module
Odoo 10 Helpdesk Module Odoo 10 Helpdesk Module
Odoo 10 Helpdesk Module Bista Solutions
 
Créer et Animer sa page Facebook - 2016
Créer et Animer sa page Facebook - 2016Créer et Animer sa page Facebook - 2016
Créer et Animer sa page Facebook - 2016Kate De Gourdon
 
MVC ppt presentation
MVC ppt presentationMVC ppt presentation
MVC ppt presentationBhavin Shah
 
Atelier doctorants Active Learning
Atelier doctorants Active LearningAtelier doctorants Active Learning
Atelier doctorants Active LearningMagalie Le Gall
 
Introduction à la veille technologique S1E01
Introduction à la veille technologique S1E01Introduction à la veille technologique S1E01
Introduction à la veille technologique S1E01Alain Marois
 
Que font-les-ados-sur-internet-02-2011
Que font-les-ados-sur-internet-02-2011Que font-les-ados-sur-internet-02-2011
Que font-les-ados-sur-internet-02-2011BEDOUET David
 
Douleur aspects psychologiquesde la douleur chronique
Douleur aspects psychologiquesde la douleur chroniqueDouleur aspects psychologiquesde la douleur chronique
Douleur aspects psychologiquesde la douleur chroniquedrmouheb
 
Ecriture De Mails
Ecriture De MailsEcriture De Mails
Ecriture De Mailsastrinity
 

Viewers also liked (20)

JavaScript pour le développeur Java
JavaScript pour le développeur JavaJavaScript pour le développeur Java
JavaScript pour le développeur Java
 
Du JavaScript dans mon projet
Du JavaScript dans mon projetDu JavaScript dans mon projet
Du JavaScript dans mon projet
 
Abogado, asesor, consultor litigante administrador de empresas Inocencio mele...
Abogado, asesor, consultor litigante administrador de empresas Inocencio mele...Abogado, asesor, consultor litigante administrador de empresas Inocencio mele...
Abogado, asesor, consultor litigante administrador de empresas Inocencio mele...
 
Centre culturel tjibaou larabi marwa
Centre culturel tjibaou larabi marwaCentre culturel tjibaou larabi marwa
Centre culturel tjibaou larabi marwa
 
XebiCon'16 : Angular2, React, Vue.js - Bien choisir son framework Front-End. ...
XebiCon'16 : Angular2, React, Vue.js - Bien choisir son framework Front-End. ...XebiCon'16 : Angular2, React, Vue.js - Bien choisir son framework Front-End. ...
XebiCon'16 : Angular2, React, Vue.js - Bien choisir son framework Front-End. ...
 
Odoo 10 Helpdesk Module
Odoo 10 Helpdesk Module Odoo 10 Helpdesk Module
Odoo 10 Helpdesk Module
 
Créer et Animer sa page Facebook - 2016
Créer et Animer sa page Facebook - 2016Créer et Animer sa page Facebook - 2016
Créer et Animer sa page Facebook - 2016
 
Why Use MVC?
Why Use MVC?Why Use MVC?
Why Use MVC?
 
Why MVC?
Why MVC?Why MVC?
Why MVC?
 
MVC ppt presentation
MVC ppt presentationMVC ppt presentation
MVC ppt presentation
 
Model View Controller (MVC)
Model View Controller (MVC)Model View Controller (MVC)
Model View Controller (MVC)
 
Mvc architecture
Mvc architectureMvc architecture
Mvc architecture
 
Atelier doctorants Active Learning
Atelier doctorants Active LearningAtelier doctorants Active Learning
Atelier doctorants Active Learning
 
Introduction à la veille technologique S1E01
Introduction à la veille technologique S1E01Introduction à la veille technologique S1E01
Introduction à la veille technologique S1E01
 
Exemples concrets d’analyse de corpus audiovisuels à l’aide du studio ASA : «...
Exemples concrets d’analyse de corpus audiovisuels à l’aide du studio ASA : «...Exemples concrets d’analyse de corpus audiovisuels à l’aide du studio ASA : «...
Exemples concrets d’analyse de corpus audiovisuels à l’aide du studio ASA : «...
 
Les nouveaux usages des ressources audiovisuelles : partage et diffusion sur ...
Les nouveaux usages des ressources audiovisuelles : partage et diffusion sur ...Les nouveaux usages des ressources audiovisuelles : partage et diffusion sur ...
Les nouveaux usages des ressources audiovisuelles : partage et diffusion sur ...
 
Projet robot lego mindstorm
Projet robot lego mindstormProjet robot lego mindstorm
Projet robot lego mindstorm
 
Que font-les-ados-sur-internet-02-2011
Que font-les-ados-sur-internet-02-2011Que font-les-ados-sur-internet-02-2011
Que font-les-ados-sur-internet-02-2011
 
Douleur aspects psychologiquesde la douleur chronique
Douleur aspects psychologiquesde la douleur chroniqueDouleur aspects psychologiquesde la douleur chronique
Douleur aspects psychologiquesde la douleur chronique
 
Ecriture De Mails
Ecriture De MailsEcriture De Mails
Ecriture De Mails
 

More from Florent Le Gall

More from Florent Le Gall (7)

React native ou comment faire une application iOS & Android quand on est déve...
React native ou comment faire une application iOS & Android quand on est déve...React native ou comment faire une application iOS & Android quand on est déve...
React native ou comment faire une application iOS & Android quand on est déve...
 
REX react native
REX react nativeREX react native
REX react native
 
Redux rx js
Redux rx jsRedux rx js
Redux rx js
 
Banach Tarski
Banach TarskiBanach Tarski
Banach Tarski
 
ReactiveX
ReactiveXReactiveX
ReactiveX
 
Rex E2E
Rex E2ERex E2E
Rex E2E
 
Hyper LogLog
Hyper LogLogHyper LogLog
Hyper LogLog
 

Asynchronismes en Javascript