Pular para o conteúdo

Trilha de estudo

Trilha React: tudo o que estudar, tópico por tópico

Avaliação abrangente de React cobrindo fundamentos de componentes, hooks, padrões avançados, gerenciamento de estado, otimização de desempenho e recursos de nível especialista incluindo funcionalidades concorrentes e server components.

Resposta curta

Para aprender React, percorra 6 módulos e 35 tópicos na ordem em que um apoia o próximo. Comece por Fundamentos de Componentes e siga para Hooks & Estado e Padrões Avançados. Use o mapa como checklist, ou meça seu nível e estude só o que falta.

6
módulos
35
tópicos
45
min para avaliar

O que você vai estudar

Os tópicos estão agrupados por módulo. Abra um para ver os objetivos e os conceitos-chave.

1 · Fundamentos de Componentes5 tópicos
  • JSX & Renderização

    Sintaxe JSX, expressões em JSX, React.createElement, fundamentos do virtual DOM, ciclo de vida de renderização

    Objetivos

    • Escrever JSX válido
    • Compreender a relação entre JSX e React.createElement

    Conceitos-chave

    • Sintaxe JSX
    • Expressões em JSX
    • React.createElement
    • Virtual DOM
    • ReactDOM.render
    • Fragments
    • Diferenças entre JSX e HTML
  • Props & Estado

    Props de componentes, tipos de props, props padrão, fundamentos de estado, elevação de estado, imutabilidade

    Objetivos

    • Diferenciar props de estado
    • Implementar fluxo de dados entre componentes

    Conceitos-chave

    • Props
    • Tipos de props
    • Props padrão
    • Estado
    • Elevação de estado (lifting state up)
    • Imutabilidade
    • Fluxo de dados unidirecional
    • Prop children
  • Manipulação de Eventos

    Eventos sintéticos, manipuladores de eventos, vinculação de eventos, eventos de formulário, delegação de eventos em React

    Objetivos

    • Manipular interações do usuário corretamente
    • Compreender o sistema de eventos sintéticos

    Conceitos-chave

    • Eventos sintéticos
    • onClick
    • onChange
    • onSubmit
    • event.preventDefault()
    • Event pooling
    • Passagem de argumentos para handlers
  • Renderização Condicional & Listas

    Padrões de renderização condicional, renderização de listas com keys, importância da prop key, uso de fragments

    Objetivos

    • Renderizar conteúdo condicionalmente
    • Renderizar listas com keys adequadas

    Conceitos-chave

    • Ternário em JSX
    • Operador lógico &&
    • Padrões if/else
    • Array.map()
    • Prop key
    • Armadilhas do index como key
    • Fragments
  • Estilização em React

    CSS Modules, Tailwind CSS, styled-components, trade-offs de CSS-in-JS, padrões de className e sistemas de tema

    Objetivos

    • Aplicar diferentes estratégias de estilização em React
    • Avaliar trade-offs de CSS-in-JS

    Conceitos-chave

    • CSS Modules
    • Tailwind CSS
    • styled-components
    • Trade-offs de CSS-in-JS
    • Shadcn/UI
    • Padrões de className
    • Sistemas de tema
    • Design responsivo em React
2 · Hooks & Estado4 tópicos
  • useState & useEffect

    Gerenciamento de estado com useState, efeitos colaterais com useEffect, arrays de dependências, funções de limpeza

    Objetivos

    • Gerenciar estado de componentes com useState
    • Lidar com efeitos colaterais corretamente usando useEffect

    Conceitos-chave

    • useState
    • useEffect
    • Array de dependências
    • Função de limpeza (cleanup)
    • Closures obsoletas (stale closures)
    • Atualizações funcionais
    • Inicialização lazy
  • useContext & useReducer

    Fundamentos da Context API, hook useContext, useReducer para estado complexo, padrões de dispatch

    Objetivos

    • Compartilhar estado via Context
    • Gerenciar estado complexo com useReducer

    Conceitos-chave

    • createContext
    • useContext
    • useReducer
    • Dispatch
    • Tipos de action
    • Padrão reducer
    • Combinação context + reducer
  • Hooks Customizados

    Extração de lógica reutilizável em hooks customizados, composição de hooks, convenções de nomenclatura, testes de hooks

    Objetivos

    • Extrair lógica reutilizável em hooks customizados
    • Compor hooks de forma eficaz

    Conceitos-chave

    • Extração de hooks customizados
    • Composição de hooks
    • Convenção do prefixo use
    • Lógica stateful compartilhada
    • Dependências de hooks
    • Retorno de tuplas vs objetos
  • useRef & Manipulação do DOM

    useRef para acesso ao DOM e valores mutáveis, forwardRef, useImperativeHandle, gerenciamento de foco

    Objetivos

    • Acessar elementos do DOM com refs
    • Distinguir ref de estado para valores mutáveis

    Conceitos-chave

    • useRef
    • ref.current
    • forwardRef
    • useImperativeHandle
    • Acesso ao DOM
    • Valores mutáveis com ref
    • Ref vs estado
3 · Padrões Avançados6 tópicos
  • Padrões de Composição

    Composição de componentes, padrões com children, componentes compostos, padrão de slots, inversão de controle

    Objetivos

    • Projetar APIs de componentes composáveis
    • Preferir composição em vez de herança

    Conceitos-chave

    • Prop children
    • Componentes compostos (compound components)
    • Padrão de slots
    • Inversão de controle
    • Composição vs herança
    • Especialização
    • Contenção (containment)
  • Render Props & HOCs

    Padrão render prop, componentes de ordem superior, trade-offs entre padrões, migração para hooks

    Objetivos

    • Implementar render props e HOCs
    • Saber quando hooks substituem esses padrões

    Conceitos-chave

    • Render props
    • Componentes de ordem superior (HOCs)
    • Padrões withRouter/connect
    • Armadilhas de HOCs
    • displayName
    • Hooks como substitutos
  • Error Boundaries

    Componentes error boundary, componentDidCatch, getDerivedStateFromError, UIs de fallback, recuperação de erros

    Objetivos

    • Implementar error boundaries para tratamento gracioso de erros
    • Conhecer suas limitações

    Conceitos-chave

    • componentDidCatch
    • getDerivedStateFromError
    • UI de fallback
    • Recuperação de erros
    • Posicionamento de error boundaries
    • Limitações (async, eventos)
  • Divisão de Código & Carregamento Lazy

    React.lazy, Suspense para divisão de código, imports dinâmicos, divisão baseada em rotas, prefetching

    Objetivos

    • Implementar divisão de código para reduzir o tamanho do bundle
    • Usar Suspense para estados de carregamento

    Conceitos-chave

    • React.lazy
    • Suspense
    • Import dinâmico (dynamic import())
    • Divisão baseada em rotas
    • Divisão baseada em componentes
    • Prefetching
    • Estados de carregamento
  • Roteamento

    Roteamento client-side com React Router v6, rotas aninhadas, segmentos dinâmicos, route loaders e TanStack Router

    Objetivos

    • Implementar roteamento client-side com rotas aninhadas e dinâmicas
    • Escolher entre bibliotecas de roteamento

    Conceitos-chave

    • React Router v6
    • createBrowserRouter
    • Rotas aninhadas
    • Segmentos dinâmicos
    • Route loaders
    • TanStack Router
    • Guardas de navegação
    • Parâmetros de URL
  • Animação

    Framer Motion, AnimatePresence, transições CSS em React, integração com GSAP, animações de layout e desempenho

    Objetivos

    • Implementar animações com Framer Motion
    • Otimizar desempenho de animações em React

    Conceitos-chave

    • Framer Motion
    • AnimatePresence
    • Transições CSS em React
    • GSAP com React
    • Animações de layout
    • Animações de gestos
    • Física de molas (spring physics)
    • Considerações de desempenho
4 · Gerenciamento de Estado5 tópicos
  • Context API em Escala

    Armadilhas de desempenho do Context, divisão de contextos, composição de providers, prevenção de re-renders desnecessários

    Objetivos

    • Escalar a Context API sem degradação de desempenho
    • Dividir contextos de forma eficaz

    Conceitos-chave

    • Divisão de contextos
    • Composição de providers
    • Memoização de valores
    • Seletores de contexto
    • Prevenção de re-renders
    • Profundidade da árvore de providers
  • Redux / Zustand

    Redux Toolkit, slices, seletores, middleware, stores Zustand, comparação de abordagens

    Objetivos

    • Implementar estado global com Redux Toolkit ou Zustand
    • Escolher a ferramenta adequada

    Conceitos-chave

    • Redux Toolkit
    • createSlice
    • Seletores
    • Middleware
    • Thunks
    • Zustand create
    • Assinaturas de store
    • Immer
  • Estado do Servidor (React Query / SWR)

    Busca de dados com React Query/TanStack Query, SWR, cache, atualizações otimistas, invalidação

    Objetivos

    • Gerenciar estado do servidor com React Query/SWR
    • Implementar estratégias de invalidação de cache

    Conceitos-chave

    • useQuery
    • useMutation
    • Invalidação de cache
    • Atualizações otimistas
    • Stale-while-revalidate
    • Query keys
    • Prefetching
    • Consultas infinitas
  • Gerenciamento de Estado de Formulários

    Componentes controlados vs não controlados, React Hook Form, Formik, validação, padrões de formulários complexos

    Objetivos

    • Construir formulários complexos com gerenciamento de estado adequado
    • Escolher entre bibliotecas de formulários

    Conceitos-chave

    • Componentes controlados
    • Componentes não controlados
    • React Hook Form
    • Formik
    • Validação
    • Arrays de campos (field arrays)
    • Submissão de formulário
    • Tratamento de erros
  • Bibliotecas de Formulários

    React Hook Form, register e control, validação de formulários com Zod/Yup, fundamentos do Formik e field arrays

    Objetivos

    • Construir formulários complexos com React Hook Form
    • Integrar validação de schema com Zod ou Yup

    Conceitos-chave

    • React Hook Form
    • Register e control
    • Validação de formulários (Zod/Yup)
    • Fundamentos do Formik
    • Controlado vs não controlado
    • Field arrays
    • Gerenciamento de estado de formulários
    • Validação server-side
5 · Desempenho & Testes4 tópicos
  • React Profiler & Otimização

    React DevTools Profiler, identificação de re-renders, estratégias de otimização de componentes, why-did-you-render

    Objetivos

    • Realizar profiling de aplicações React
    • Identificar e corrigir re-renders desnecessários

    Conceitos-chave

    • React Profiler
    • Flamegraph do DevTools
    • Identificação de re-renders
    • Divisão de componentes
    • Colocalização de estado
    • why-did-you-render
  • Memoização (memo / useMemo / useCallback)

    React.memo, useMemo, useCallback, quando aplicar memoização, armadilhas da memoização

    Objetivos

    • Aplicar memoização corretamente
    • Evitar memoização prematura

    Conceitos-chave

    • React.memo
    • useMemo
    • useCallback
    • Igualdade referencial
    • Arrays de dependências
    • Otimização prematura
    • Função de comparação do memo
  • Testes (RTL / Jest)

    React Testing Library, Jest, user-event, testes de hooks, mocking, testes de integração vs unitários

    Objetivos

    • Escrever testes seguindo as melhores práticas do RTL
    • Testar interações do usuário, não a implementação

    Conceitos-chave

    • render
    • screen
    • user-event
    • Queries (getBy/findBy/queryBy)
    • waitFor
    • act()
    • Funções mock
    • Testes de hooks customizados
  • Acessibilidade

    Roles ARIA, HTML semântico em React, navegação por teclado, suporte a leitores de tela, testes de acessibilidade (a11y)

    Objetivos

    • Construir componentes React acessíveis
    • Testar conformidade de acessibilidade

    Conceitos-chave

    • Roles ARIA
    • aria-label
    • HTML semântico
    • Navegação por teclado
    • Gerenciamento de foco
    • Leitores de tela
    • axe-core
    • eslint-plugin-jsx-a11y
6 · React Especialista11 tópicos
  • Internos do React (Fiber / Reconciliation)

    Arquitetura Fiber, algoritmo de reconciliação, diffing do virtual DOM, fases de commit, scheduler

    Objetivos

    • Explicar a arquitetura Fiber
    • Compreender os algoritmos de reconciliação e diffing

    Conceitos-chave

    • Nós Fiber
    • Reconciliação
    • Diffing do virtual DOM
    • Fase de commit
    • Fase de render
    • Work loop
    • Priority lanes
    • Scheduler
  • Funcionalidades Concorrentes (Suspense / Transitions)

    Renderização concorrente, useTransition, useDeferredValue, Suspense para busca de dados, streaming SSR

    Objetivos

    • Aproveitar funcionalidades concorrentes para melhorar a UX
    • Compreender renderização baseada em prioridade

    Conceitos-chave

    • Renderização concorrente
    • useTransition
    • useDeferredValue
    • Suspense para dados
    • Streaming SSR
    • Hidratação seletiva
    • Renderização baseada em prioridade
  • Server Components

    React Server Components, limites client vs server, 'use client'/'use server', streaming, payload RSC

    Objetivos

    • Arquitetar aplicações com Server Components
    • Compreender o limite server/client

    Conceitos-chave

    • React Server Components
    • Diretiva use client
    • Diretiva use server
    • Limite server/client
    • Payload RSC
    • Streaming
    • Componentes de tamanho zero no bundle
  • Compilador & Otimização de Build

    React Compiler (React Forget), memoização automática, otimização de build, análise de bundle, tree shaking

    Objetivos

    • Compreender as otimizações do React Compiler
    • Otimizar a saída de build para produção

    Conceitos-chave

    • React Compiler
    • Memoização automática
    • Análise de bundle
    • Tree shaking
    • Eliminação de código morto
    • Module federation
    • Otimização de build
  • Meta-Frameworks

    Next.js App Router, server actions, Remix loaders, Astro islands, roteamento baseado em arquivos e estratégias de implantação

    Objetivos

    • Arquitetar aplicações utilizando meta-frameworks React
    • Comparar trade-offs entre frameworks

    Conceitos-chave

    • Next.js App Router
    • Server actions
    • Renderização estática vs dinâmica
    • Remix loaders
    • Astro islands
    • Roteamento baseado em arquivos
    • Rotas de API
    • Estratégias de implantação
  • Portals & Padrões Avançados

    createPortal, padrões de modal, limites de Suspense, startTransition, useDeferredValue e padrões concorrentes

    Objetivos

    • Usar portals para renderizar fora da hierarquia do DOM
    • Aplicar padrões concorrentes do React de forma eficaz

    Conceitos-chave

    • createPortal
    • Padrões de modal
    • Posicionamento de tooltip
    • Limites de Suspense
    • startTransition
    • useDeferredValue
    • flushSync
    • Padrões concorrentes
  • React Compiler & Funcionalidades Concorrentes

    Compreensão do compilador do React 19, memoização automática, funcionalidades concorrentes (useTransition, Suspense) e modelo de renderização

    Objetivos

    • Explicar o que o React Compiler faz e quando ele elimina corretamente a memoização manual
    • Identificar cenários de tearing na renderização concorrente e aplicar estratégias de mitigação apropriadas

    Conceitos-chave

    • React Compiler
    • Memoização automática
    • useTransition
    • useDeferredValue
    • Limites de Suspense
    • Renderização concorrente
    • Prevenção de tearing
  • Arquitetura Avançada de Estado

    Projetar arquiteturas de estado React escaláveis usando Zustand, Jotai, Valtio ou padrões de estado atômico para aplicações complexas

    Objetivos

    • Projetar uma arquitetura de estado que minimize re-renders e escale em aplicações grandes
    • Avaliar bibliotecas de estado atômico contra stores estilo Redux para um dado formato de problema

    Conceitos-chave

    • Estado atômico
    • Zustand slices
    • Jotai atoms
    • Valtio proxy
    • Normalização de estado
    • Estado derivado
    • Otimização de assinaturas
    • Máquinas de estado (XState)
  • Profiling de Desempenho React em Escala

    Uso do React DevTools Profiler, auditoria de useMemo/useCallback, estratégias de virtualização e análise de bundle para eliminar gargalos no React

    Objetivos

    • Usar flame charts do React DevTools Profiler para identificar caminhos de renderização custosos
    • Aplicar técnicas de virtualização e auditoria de memoização para eliminar gargalos em listas grandes e árvores complexas

    Conceitos-chave

    • React Profiler
    • Flame charts
    • Fases de commit
    • Auditoria de memo
    • Windowing (react-window)
    • Análise de bundle
    • Desempenho de hidratação
    • Interaction to Next Paint
  • Server Components & Arquitetura de Streaming

    Construção de arquiteturas React Server Component com streaming, hidratação parcial e padrões de composição server/client

    Objetivos

    • Projetar uma árvore de componentes que posicione corretamente os limites server/client para maximizar os benefícios de RSC
    • Implementar streaming SSR com Suspense para entregar conteúdo progressivamente e melhorar o TTFB

    Conceitos-chave

    • React Server Components
    • Diretiva 'use client'
    • Streaming SSR
    • Suspense para dados
    • Hidratação parcial
    • Limite client-server
    • Restrições de serialização
  • Padrões Cross-Platform React Native

    Construção de aplicações React Native cross-platform: codebases compartilhados, otimizações específicas por plataforma e pontes de módulos nativos

    Objetivos

    • Projetar um codebase React Native compartilhado que lide com UI e comportamento específicos por plataforma sem bifurcar a lógica
    • Explicar a Nova Arquitetura do React Native (JSI, Fabric, TurboModules) e suas implicações de desempenho

    Conceitos-chave

    • Nova Arquitetura (JSI)
    • Renderizador Fabric
    • TurboModules
    • Arquivos específicos por plataforma
    • Motor Hermes
    • CodePush
    • Expo managed vs bare workflow

Níveis: Júnior, Pleno, Sênior e Especialista

Explique com suas palavras

Corrigido por IA · sem cadastro · 1 pergunta

Sem alternativas para chutar: você escreve, a IA corrige com a rubrica do tópico e diz em que nível sua resposta está.

0 / 600

Já estuda React?

A avaliação mede tópico por tópico, e o plano pula o que você já sabe.

Aberto para ler. A conta só é necessária para ser medido.

Perguntas frequentes

Por onde começar a estudar React?

Comece por Fundamentos de Componentes: JSX & Renderização, Props & Estado e Manipulação de Eventos. O mapa ordena os tópicos pelo que depende de quê, então cada um prepara o seguinte.

Quanto tempo leva uma avaliação completa de React?

Uma avaliação completa desta trilha leva cerca de 45 minutos. O tempo de estudo depende de onde você começa; o diagnóstico mostra quais tópicos você pode pular.

Preciso de conta para usar esta página?

Não. O mapa, os objetivos e os conceitos-chave são abertos. A conta só é necessária para ser medido, ver seu gap por tópico e receber um plano.