Plano — Galho React Design Patterns (galho 2 do domínio React)
Objetivo
Criar o galho React Design Patterns no domínio multi-galho Tecnologia/React — um catálogo de referência dos padrões consolidados da indústria React, em 3 fases (Iniciado/Adepto/Magus), padrão capítulo, TS-first. Alvo: prep entrevistas internacionais, perfil Senior Fullstack. É o galho 2 da sequência do domínio React (após React core), parte da Onda A do Roadmap.
Tese: padrões em React são soluções reutilizáveis para problemas recorrentes de composição, reuso de lógica e inversão de controle. Em 2026, a maioria dos padrões clássicos (HOC, render props) foi absorvida por custom hooks — então o galho ensina os padrões vivos a fundo e os legados pelo que ainda aparecem (libs antigas, entrevista, casos específicos).
Princípio: catálogo auto-contido (redundância é reforço)
Diferente das outras trilhas, este galho é um catálogo de referência auto-contido (feedback_redundancia_entre_notas). Cada padrão é uma entrada completa: intenção (que problema resolve) → mecanismo → exemplo .tsx cheio (com tipagem mostrada inline, TS-first) → trade-offs e quando usar/evitar → quais bibliotecas o usam. Pode repetir conteúdo que vive em React core / TypeScript com React, mas sempre sob a ótica do padrão. Os links pras notas canônicas continuam (para o aprofundamento daquele tema), mas o leitor não precisa sair do catálogo para entender o padrão.
Domínio multi-galho — posição
Galho 2 de: 1. React core ✅ · 2. React Design Patterns (este) · 3. Next.js · 4. Ecossistema · 5. TypeScript com React (existe) · 6. Charts (existe).
Princípios
- Escrita do ZERO com pesquisa (estado 2026), usando as fontes-base abaixo + WebSearch dirigido.
- TS-first: exemplos em
.tsxcom tipos idiomáticos; a tipagem do padrão é mostrada aqui, linkando TypeScript com React só para nuances profundas. - Padrão capítulo (feedback_padrao_capitulo_livro): problema-primeiro, registro Feynman (feedback_enriquecimento_feynman), exemplos trabalhados, Mermaid onde agrega, “Como explicar em inglês” + PT↔EN, “Armadilhas comuns”. Notas profundas com diagramas (feedback_notas_profundas_diagramas).
- Calibração por fase (project_trilhas_fases_aprendizado) — a maioria dos padrões é Adepto/Magus.
Fontes-base de pesquisa (consultar ao escrever cada padrão)
- patterns.dev — React
- react-in-patterns (Krasimir Tsonev)
- refine.dev — React design patterns
- dev.to (WoMakersCode) — Design Patterns no React
- Medium (Ignatovich) — A Dive into React Design Patterns
- perssondennis — 21 Fantastic React Design Patterns
- GreatFrontend — React Design Patterns
- LogRocket — React design patterns
- TurboDocx — React Design Patterns
- UXPin — React Design Patterns
Cada nota cita as fontes que usou em ## Referências (proveniência), além das oficiais (react.dev) quando aplicável.
Fronteiras (seams — linkar E reforçar, não apenas adiar)
| Tema | Tratamento aqui | Linka |
|---|---|---|
| Tipagem profunda dos padrões (generics, satisfies) | tipagem básica mostrada inline | TS-com-React 14, 13 |
| Composição básica / arquitetura de app | recap sob ótica de padrão | React core 08 e 24 |
| Mecânica de hooks (regras, useState/useEffect) | usada, não reensinada do zero | React core 14, 09 |
Polymorphic (as prop) | menção | TS-com-React 13 |
Roster (12 notas — 3 / 6 / 3)
🟢 Iniciado — fundamentos de padrões (3)
- Padrões no React e a evolução — o que é um design pattern no contexto React; a história HOC → render props → custom hooks (por que os hooks venceram); como ler uma entrada deste catálogo (intenção/mecanismo/trade-off)
- Container vs Presentational — smart/dumb components; o padrão clássico e por que os hooks reescreveram a conversa
- Controlled vs Uncontrolled — quem é a fonte da verdade;
value+onChangevsdefaultValue+ref; quando cada um; componentes que suportam ambos
🟡 Adepto — os padrões do dia a dia (6)
- Custom hooks como padrão de reuso de lógica — o “vencedor” moderno; como substitui HOC e render props; composição de hooks; exemplos (useToggle, useFetch)
- Provider pattern — context + provider; provider + reducer (o “mini-Redux”); context module functions (Kent C. Dodds); custom hook que encapsula o context com guard
- Composição: slots, layout e children-as-API — children como slot; múltiplos slots via props de JSX; layout components; children-as-API; composição sobre configuração
- Compound components —
<Select><Select.Option/></Select>; context interno compartilhado; flexibilidade vs acoplamento; como as libs de UI usam - Render props e function-as-child — passar uma função que renderiza; quando ainda vale em 2026 vs custom hook
- Higher-Order Components (HOC) — o legado;
withX; composição de HOCs; problemas (wrapper hell, props colisão); onde ainda aparece
🔴 Magus — padrões avançados e de biblioteca (3)
- State reducer + prop getters — inversão de controle; o usuário customiza o comportamento interno; o padrão do
downshift/Kent C. Dodds - Headless components e headless hooks — lógica sem apresentação; Radix, TanStack (Table/Query), Headless UI; separar comportamento de estilo; por que é o padrão dominante de libs em 2026
- Capstone — escolher o padrão certo e em entrevista — decision tree (qual padrão para qual problema), anti-patterns, mapa de revisão do galho, “como explicar em inglês”
Artefatos do domínio
Dicionário de React— já existe; enriquecer com verbetes dos padrões (HOC, render prop, compound component, prop getter, headless, etc.).- Índice do galho —
index.mdda subpastaDesign Patterns/, MOC das 3 fases. React/index.md— atualizar: galho React Design Patterns de ⬜ planejado → 🟩 (linkar o índice).
Execução
Pasta-alvo: 03-Dominios/Tecnologia/React/Design Patterns/ (notas 01 - … a 12 - … + index.md).
- Escrever o galho fresco (com pesquisa nas fontes-base), em ondas por fase, gate
/verificar-notapor nota e/verificar-wikilinkspor fase. Padrão subagente-por-nota. - Teardown: criar índice do galho; atualizar
React/index.md(marcar galho); verificar 0 quebras; atualizar Roadmap. - (Opcional) Ciclo de qualidade:
/plantar-duvidas→/colher-duvidas;/enriquecer-nota.
Fora de escopo (deste galho)
- Next.js, Ecossistema (MUI/Mantine/TanStack Query) → galhos próprios.
- Mecânica de hooks e fundamentos de React → galho React core (pronto).
- Tipagem profunda dos padrões → galho TypeScript com React (existe).
Padrões e referências
- Roadmap de Trilhas (Onda A — domínio React)
- project_trilhas_fases_aprendizado, feedback_padrao_capitulo_livro, feedback_notas_profundas_diagramas, feedback_redundancia_entre_notas, project_tronco_galhos_pattern, project_artefatos_dominio
- Galho-modelo: React core (26 notas)