Entenda por que React domina o desenvolvimento front-end moderno — e como componentes, props, state e JSX formam a estrutura fundamental de qualquer interface profissional.
Por que React se tornou o padrão do mercado front-end em menos de uma década?
Em 2013, o Facebook lançou o React como resposta a um problema concreto: interfaces complexas com dezenas de componentes interdependentes que tornavam a manutenção de código um pesadelo. A solução foi radical — em vez de manipular o DOM diretamente, React introduziu o conceito de Virtual DOM e uma arquitetura baseada em componentes reutilizáveis. Dez anos depois, React é usado por Netflix, Airbnb, Instagram, WhatsApp Web e mais de 40% das aplicações front-end em produção no mundo.
A pergunta para o estudante de desenvolvimento de sistemas não é mais “devo aprender React?” — é “quão profundamente preciso entender seus fundamentos para ser competitivo no mercado?” Esta aula responde: é preciso dominar componentes, props, state e JSX. Tudo o mais em React deriva dessas quatro abstrações.
Como ensinar React no ensino médio técnico com infraestrutura limitada?
A aula [SIS]ANO2C3B2S8A1 resolve um desafio pedagógico real: React exige Node.js, npm e um bundler (Vite ou Create React App) para funcionar. Em laboratórios de escola pública, a instalação dessas ferramentas pode consumir toda a aula disponível. A estratégia da SEDUC-SP é precisa — apresentar os conceitos com código limpo e contextualizado, usando o laboratório de informática com ambiente já configurado ou alternativas online como StackBlitz e CodeSandbox, que rodam React diretamente no navegador sem instalação.
Bloco reutilizável que encapsula lógica e layout de uma parte da interface. Pode ser funcional (função que retorna JSX) ou de classe (ES6). Componentes funcionais com hooks são o padrão atual da indústria.
JavaScript XML — sintaxe que permite escrever elementos React usando uma notação similar ao HTML, mas diretamente dentro de arquivos JavaScript. O Babel transpila JSX para React.createElement() durante o build.
Quais são as diferenças fundamentais entre props e state?
| DIMENSÃO | PROPS | STATE |
|---|---|---|
| Mutabilidade | Imutável — o componente não pode alterar suas próprias props | Mutável — alterado via função setter (useState) |
| Origem | Passado pelo componente pai — fluxo de dados de cima para baixo | Gerenciado internamente pelo próprio componente |
| Uso típico | Configurar aparência e comportamento — label de botão, cor, dados de exibição | Dados dinâmicos — contadores, conteúdo de formulários, estado de animações |
| Re-render | Mudança nas props do pai re-renderiza o componente filho | Toda chamada ao setter dispara re-render do componente |
| Analogia | Parâmetros de uma função — configuram sem alterar | Variável local com efeito colateral visual |
Componentes funcionais vs. componentes de classe
Componente Funcional
Função JavaScript que retorna JSX. Com hooks (useState, useEffect), tem todo o poder dos componentes de classe com menos código e maior legibilidade. É o padrão desde React 16.8.
Componente de Classe
Baseado em classes ES6 com método render(). Estado gerenciado via this.setState(). Ainda encontrado em bases de código antigas (legacy). Novos projetos não devem usar.
Como implementar props e state em React na prática?
Template 1 — Props: componente Button reutilizável
import React from 'react';
// Componente Button — recebe 'label' como prop (imutável)
function Button({ label }) {
return (
<button>
{label}
</button>
);
}
// Componente App — passa diferentes props para o mesmo componente
function App() {
return (
<div>
<Button label="Clique Aqui" />
<Button label="Enviar" />
<Button label="Cancelar" />
</div>
);
}
export default App;
Template 2 — State: contador com useState hook
import React, { useState } from 'react';
function Counter() {
// useState(0): valor inicial. Retorna [valorAtual, funcaoSetter]
const [count, setCount] = useState(0);
// Toda chamada ao setter dispara re-render do componente
const increment = () => {
setCount(count + 1);
};
return (
<div>
<p>Você clicou {count} vezes</p>
<button onClick={increment}>
Clique para incrementar
</button>
</div>
);
}
export default Counter;
const element = <h1>Hello, world!</h1>; — isso não é uma string HTML. É JSX que será transpilado pelo Babel para React.createElement('h1', null, 'Hello, world!'). O Virtual DOM usa essa estrutura para calcular o menor conjunto de mudanças necessárias no DOM real.Como esse conhecimento aparece em um cenário profissional real?
O desenvolvedor como mediador técnico
A TechStore está lançando um catálogo de produtos eletrônicos. A equipe de marketing quer conversão — botões grandes, filtros rápidos, estado persistido. Os designers querem estética — componentes polidos, animações fluidas. Você, como dev React, percebe que componentes bem estruturados com props claras são justamente o contrato que une as duas visões.
- Props como contrato: o componente
ProductCardcom props comoname,price,onAddToCartdefine o que cada time pode personalizar sem quebrar a estrutura. - State como comportamento: o estado de “adicionado ao carrinho” é gerenciado internamente — o designer não precisa saber como funciona, o marketing recebe o comportamento esperado.
- Mediação técnica: a habilidade de traduzir necessidades de negócio em props e comportamentos de UI em state é o diferencial de um desenvolvedor front-end sênior.
De aula de React a ativo pedagógico e profissional
Evoluir o Counter para um carrinho de compras completo com useState. Conectar com a próxima semana (ciclo de vida, useEffect) para buscar produtos de uma API real.
Série “React do zero ao mercado” — artigos curtos com exemplos contextualizados para o mercado de SP: de componentes simples a dashboards reais.
Projeto integrado: alunos constroem uma interface React para o próprio lab de informática — catálogo de equipamentos, painel de chamados, agenda de uso.
Oficina: como ensinar React sem Node.js instalado — usando StackBlitz e CodeSandbox para acesso imediato em qualquer laboratório escolar.
Perguntas frequentes sobre React para iniciantes
Acesse todos os materiais do Curso Técnico
Slides, roteiros, projetos React e reflexões sobre ensino de tecnologia na escola pública.
→ professorcomia.com.brReact como mentalidade de composição, não como sintaxe
Aprender React não é memorizar a API do framework — é internalizar uma forma diferente de pensar interfaces: como composição de peças independentes, cada uma com responsabilidade única e fluxo de dados previsível. O desenvolvedor que compreende props como contratos imutáveis e state como fonte única de verdade está pronto para qualquer framework — Vue, Angular, Svelte — porque entendeu o princípio, não a ferramenta.
>_ slides da aula
[SIS]ANO2C3B2S8A1 · introdução ao react · 2º ano · semana 8 · aula 1