$cat~/glossario/callback-hell.md

Callback Hell

Assíncrono

Aninhamento profundo de callbacks dificultando leitura e tratamento de erro.

callback-hell.mdmarkdown
01

seção

Explicação

Callback Hell — Aninhamento profundo de callbacks dificultando leitura e tratamento de erro.

Pirâmide de callbacks aninhados — difícil ler, tratar erro e paralelizar.

Mitigado por Promises, async/await e named functions.

02

seção

Exemplo

snippetJavaScript
getA((a) => {  getB(a, (b) => {    getC(b, (c) => { /* ... */ });  });});
03

seção

Modo de uso

  • Identificar código para refactor Promise

  • Modularizar com named steps

  • Aplicar async/await wrapper

04

seção

Armadilhas comuns

  • Mix callback + promise sem promisify

  • Forgotten error param

05

seção

Termos relacionados