Chapitre 04 / Conférence 08 @ Evaneos - Deep dive dans async/await
Publié le 18 octobre 2018 • 34:42

Talk de Christophe Porteneuve :


Les callbacks, c’est bien, mais ça pose vite des soucis, car les anti-patterns sont nombreux et les usages avancés vite difficiles à maintenir.

Les promesses corrigent pratiquement tous ces soucis (et ceux qu’elles ne corrigent pas, les Observables arrivent…), mais même si elles sont assez faciles à apprivoiser, le code obtenu reste, de toutes façons, moins immédiatement lisible et maintenable que du bon vieux code séquentiel et bloquant.

La syntaxe async / await—officielle depuis ES2017, native depuis v8 5.5 (donc Node 7.6, 21/02/2017), et transpilée par Babel depuis des lustres—nous permet d’avoir le beurre et l’argent du beurre : le code est asynchrone, composable, non bloquant… et parfaitement lisible. On récupère les primitives de base : conditions, boucles, try…catch… Mais attention, ça ne remplace pas les promesses : bien au contraire, c’est intimement basé dessus ! Et du coup, le danger serait de rechercher/remplacer du code bloquant bêtement, sans tirer parti des possibilités de parallélisation, etc.

Qui plus est, pas mal d’extensions d’usage sont possibles, au-delà des seules promesses « classiques ».

Dans cette présentation, Christophe essaiera en 20 minutes de faire le tour du sujet, de bien vous faire saisir l’essence et la puissance de ce nouveau mécanisme, de vous dire où tout ça va, et de vous donner envie, surtout, de l’utiliser partout !

Envie de commenter ? Fais-le directement sur YouTube !