React é uma biblioteca, não um framework
O React é uma biblioteca de interfaces. Ele sabe renderizar componentes na tela, gerenciar estado e responder a eventos.
O que ele não faz é definir como as rotas funcionam, como os dados são buscados, como as páginas são pré-renderizadas ou como o projeto deve ser estruturado.
Essas decisões ficam a cargo do desenvolvedor. Em projetos pequenos isso não é um problema. Em projetos maiores, a falta de convenções leva a soluções diferentes em cada time, dificultando a manutenção.
O que o Next.js adiciona ao React
O Next.js parte do React e adiciona uma camada de convenções e funcionalidades que a biblioteca não oferece nativamente. Veja a comparação:
| Recurso | React puro | Next.js |
|---|---|---|
| Roteamento | Necessita de biblioteca externa (React Router) | Baseado na estrutura de pastas, sem configuração |
| Busca de dados | useEffect + fetch no cliente | async/await direto no componente, no servidor |
| SEO | Página em branco no carregamento inicial | HTML pré-renderizado com os dados já presentes |
| Rotas de API | Necessita de servidor Node.js separado | Criadas dentro do mesmo projeto, na pasta app/api/ |
| Otimização de imagens | Manual | Componente <Image> nativo com lazy loading e redimensionamento automático |
O Next.js não substitui o React. Todo o conhecimento de componentes, useState, useEffect e props continua sendo usado da mesma forma. O framework apenas preenche as lacunas que a biblioteca deixa em aberto.
A estrutura de um projeto Next.js
A imagem abaixo mostra a pasta app/ de um projeto Next.js:
O roteamento no Next.js é definido pela estrutura de pastas.
Um arquivo page.tsx dentro de app/blog/ cria automaticamente a rota /blog. Uma pasta app/api/newsletter/ com um arquivo route.ts cria o endpoint /api/newsletter. Não há arquivo de configuração de rotas.
Essa convenção reduz o tempo de configuração inicial e torna a estrutura do projeto previsível para qualquer desenvolvedor que já conheça o framework.
Projeto 1: A arquitetura do projeto
Para entender melhor o funcionamento das rotas, vamos construir um exemplo prático que apresenta o roteamento do NextJS.
Porém, antes de colocar a mão no código vamos conhecer a arquitetura desse projeto e quais benefícios o NextJS traz para o desenvolvimento quando comparado ao React.
...Desbloqueie toda a DevMedia
-
+2000 artigos e vídeos
-
+40 trilhas sobre Front-end, Back-end, IA e muito mais
-
+5000 exercícios práticos
-
Mentorias ao vivo individuais
Confira outros conteúdos:
CTE (Common Table Expression): Deixe...
Introdução a API REST (para quem não...
O Papel do JavaScript no Front-end:...
Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.