1
resposta

Model, controlador e dao?

Ao entrar no github, não entendi muito bem como o código foi arquitetado para essa aula. Ao que me parece temos 4 tipos de módulos: models, controladores, dao e rotas. Nos outros cursos, não consegui encontrar uma arquitetura parecida. Qual é a responsabilidade de cada tipo de módulo? Por que não temos apenas um Model, uma rota e um controlador (ou seja, sem o dao) para os usuários e para os posts?

1 resposta

Olá João, Tudo bem?

A ideia de ter uma DAO é que ela seja responsável por comunicação com o Banco de Dados. O Model é apenas uma representação do Modelo, que pode ser inclusive igual ou não ao banco de dados.

A ideia é que separando o Modelo do Acesso ao Banco, você tem um desacoplamento maior. Em caso de uma mudança de banco de dados, por exemplo, você mudaria apenas o DAO, sem ter que fazer nenhuma mudança no modelo.

Cussa

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software