O que Mudou
Compare o ponto de partida — manipulação direta do DOM, createElement para
cada campo, atualização manual de cada elemento — com o resultado:
- Renderização: o componente descreve a interface como função dos dados. O React calcula as atualizações.
- Fetch e estados:
useStateeuseEffectorganizam o ciclo de carregamento, sucesso e erro em poucas linhas. - Navegação: o React Router mapeia URLs a componentes. Clicar num link troca a tela sem recarregar a página.
- Composição:
EventListusaEventCard.AppusaEventListeEventDetail. Cada componente é uma peça isolada com responsabilidade clara.
O código que o programador escreve mudou de caráter. Não é mais um script imperativo que busca nós e os modifica um a um. É uma descrição declarativa de como a interface deve ser — e o framework cuida do resto.