📖
Padrão

Context API

Compartilha valores entre componentes sem prop drilling.

📚 O que é

createContext cria o contexto. Provider envolve a árvore com value. useContext consome. TODOS os consumers re-renderizam quando value muda — sem seletor nativo.

✅ Quando usar

Dados que raramente mudam: tema, idioma, usuário logado. Poucos consumers. Dado que não precisa de updates frequentes.

🚫 Quando NÃO usar

Estado que muda frequentemente (lista, timer, real-time). Muitos consumers com atualizações parciais diferentes. Apps grandes (use Zustand/Redux).

👍 Prós
Nativo do React
Simples
Sem lib externa
Prop drilling zero
👎 Contras
Re-render em cascata
Sem seletor nativo
Performance ruim para estado dinâmico
Aninhamento de providers vira 'inferno'