1
resposta

Camada de infraestrutura

No final das aplicação os elementos que compõem a camada de infraestrutura ficaram dentro de uma pasta chamada Data, no projeto ContainRs.WebApp (camada de adaptadores de interface). Ou seja, a camada de infraestrutura e de interface ficaram juntas em um único projeto (ContainRs.WebApp) e no decorrer do curso fomos separando as camadas de Aplicação e Domínio. Não poderíamos ter separado a camada de infraestrutura em um projeto separado? Por que essas duas camadas foram mantidas juntas?

1 resposta

Olá, Leonardo! Tudo bem?

Na prática, a separação das camadas em projetos distintos é uma decisão arquitetural que pode variar de acordo com as necessidades e contexto do projeto.

No curso, a abordagem adotada manteve a camada de infraestrutura junto com a de interface em um único projeto, possivelmente para simplificar a estrutura do exemplo ou por razões específicas de integração entre essas camadas. Isso não significa que é a única forma correta de fazer. Em muitos casos, separar a infraestrutura em um projeto próprio pode trazer benefícios, como maior modularidade, facilidade de manutenção e a possibilidade de reutilizar a infraestrutura em outros projetos.

Por exemplo, se você tem uma aplicação que precisa se comunicar com diferentes bancos de dados ou serviços externos, ter a infraestrutura em um projeto separado pode facilitar a troca ou atualização desses componentes sem impactar diretamente a camada de interface.

A decisão de manter ou separar as camadas deve levar em consideração fatores como a complexidade do projeto, o tamanho da equipe, a necessidade de reutilização de componentes e as práticas de desenvolvimento adotadas pela equipe.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.