# Callback Hell vs. Promise vs. Async / Await

Dans un univers asynchrone, nous sommes amenés à utiliser des fonction de "callback" pour être informé du résultat du traitement.

Le chapitre [Callback Hell](https://guide-angular.wishtack.io/angular/callback-hell-vs.-promise-vs.-async-await/callback-hell) présente les limitations des "callback" "classiques" puis les chapitres suivants présentent progressivement des solutions de plus en plus élégantes et puissantes.

{% hint style="info" %}
Bien qu'il soit tentant d'aller directement au chapitre [Observables](https://guide-angular.wishtack.io/angular/observables), il est nécessaire de maitriser les [Promise](https://guide-angular.wishtack.io/angular/callback-hell-vs.-promise-vs.-async-await/promise) ainsi que l'approche [Async / Await](https://guide-angular.wishtack.io/angular/callback-hell-vs.-promise-vs.-async-await/async-await) qui s'avèrent pratiques dans certains cas.
{% endhint %}

{% content-ref url="callback-hell-vs.-promise-vs.-async-await/callback-hell" %}
[callback-hell](https://guide-angular.wishtack.io/angular/callback-hell-vs.-promise-vs.-async-await/callback-hell)
{% endcontent-ref %}

{% content-ref url="callback-hell-vs.-promise-vs.-async-await/promise" %}
[promise](https://guide-angular.wishtack.io/angular/callback-hell-vs.-promise-vs.-async-await/promise)
{% endcontent-ref %}

{% content-ref url="callback-hell-vs.-promise-vs.-async-await/async-await" %}
[async-await](https://guide-angular.wishtack.io/angular/callback-hell-vs.-promise-vs.-async-await/async-await)
{% endcontent-ref %}

{% content-ref url="observables" %}
[observables](https://guide-angular.wishtack.io/angular/observables)
{% endcontent-ref %}
