Pièges dans la documentation des Promesses
Éviter les problèmes de la documentation populaire
Détection d’anti-modèles de Promises dans les résultats de recherche Google et les bibliothèques populaires.

Je commence par une confession : je reconnais avoir moi-même écrit les mêmes « anti-modèles » que je critique ci-dessous, tout comme je suis certain que de nombreux développeurs JavaScript l’ont également fait. Rien de ce que j’ai exposé ici n’est personnel, ni même destiné aux auteurs originaux. Je réalise simplement un code review sur des modèles courants - j’espère transmettre une compréhension de mes priorités et de mon processus de réflexion critique.
J’espère que vous serez capable de repérer les signes avant-coureurs de mauvaises Promises après avoir étudié ce projet.
CallbackHell.com
CRÉDIT : http://callbackhell.com/
StrongLoop
CRÉDIT :
https://strongloop.com/strongblog/node-js-callback-hell-promises-generators/
RisingStack
CRÉDIT : https://blog.risingstack.com/node-js-async-best-practices-avoiding-callback-hell-node-js-at-scale/ Cet article est assez solide. J’ai toutefois une seule préoccupation :

Bibliothèque Q
CRÉDIT : https://github.com/kriskowal/q
La bibliothèque Q est l’une des plus anciennes et des plus utilisées associée aux « Promises ». En conséquence, elle souffre d’exemples vieillissants et d’une nécessité de maintenir la compatibilité descendante.
Je dis « associée aux “Promises” » puisque je considère que Q est en réalité axée sur le modèle deferred.
Cela peut ressembler à des Promises, mais je persiste à dire que ce n’en sont pas. Elle présente une surface d’attaque bien trop grande pour les mauvaises raisons. De plus, la convention de nommage abbrevie de manière incohérente les noms, rendant plus difficile la mémorisation de l’interface. Les méthodes comme when et done ne sont pas nécessaires.
En résumé : le modèle deferred est un anti-modèle douloureux — il n’améliore presque rien par rapport à l’approche classique des callbacks.


Veuillez consulter (& étoiler) le projet Github compagnon de cet article, Escape From Callback Mountain
Objectif du projet : recherche et développement de meilleurs modèles de langage fonctionnel en JavaScript.

