Executando verificação de segurança...
1

[DÚVIDA] - Arquitetura MVC usando Next.js

Olá, pessoal! Estou começando agora a estudar Next.js para realizar um projeto. Sei um pouco de arquitetura MVC (model, view, controller), mas estou em dúvida se funciona bem com next. Por enquanto, estou apenas criando a estrutura. Está assim, no momento:

  • src/
    • pages/
      • api/
        • controllers/
        • domains/
        • interfaces/
        • middlewares/
        • models/
        • routes/
        • services/
        • utils/

Me disseram que não é bom colocar as pastas dentro de pages, que talvez seja melhor criar dentro de src. Podem me ajudar com essa dúvida?

Carregando publicação patrocinada...
1

Olá!
Otimo que você esteja começado a estudar Next.js para realizar um projeto!
Você pode aplicar os princípios do padrão MVC em seu aplicativo Next.js, se desejar.
Em relação à organização do seu projeto, acredito que a melhor prática seja criar a estrutura de pastas dentro de src. Geralmente, o diretório src é usado para armazenar todo o código-fonte da aplicação. Além disso, é importante manter as pastas com nomes intuitivos para que outros desenvolvedores possam entender rapidamente a estrutura do seu projeto.

Sujestão:

  • src/
  • api/
  • components/
  • controllers/
  • domains/
  • interfaces/
  • middlewares/
  • models/
  • pages/
  • routes/
  • services/
  • utils/

Nesta estrutura, cada pasta possui um propósito específico:

  • api/: pasta para armazenar arquivos de servidor e rotas API.
  • components/: pasta para armazenar componentes React que são compartilhados em várias páginas.
  • controllers/: pasta para armazenar controladores que lidam com a lógica de negócios e se comunicam com o modelo e o serviço.
  • domains/: pasta para armazenar arquivos relacionados a domínios, como modelos de dados e lógica de negócios.
  • interfaces/: pasta para armazenar tipos e interfaces.
  • middlewares/: pasta para armazenar middlewares, como autenticação ou autorização.
  • models/: pasta para armazenar modelos de dados.
  • pages/: pasta para armazenar arquivos de página Next.js.
  • routes/: pasta para armazenar arquivos de rotas para navegação do usuário.
  • services/: pasta para armazenar arquivos de serviço, que lidam com a comunicação com o servidor e o gerenciamento de dados.
  • utils/: pasta para armazenar funções de utilidade e bibliotecas de terceiros.
0