Tabela de conteúdos

Arquitetura da Solução - Geoserviços.online

Fundamentação

A arquitetura do sistema foi inspirada na “arquitetura da cebola” (Onion Architecture), que visa a reduzir o acoplamento entre camadas mantendo o modelo e as regras de negócio no núcleo do sistema e movendo a infraestrutura para fora do domínio.

Princípios a serem seguidos:

Camadas

Domínio

Camada de domínio do sistema. Todo o modelo de dados e as validações são implementados aqui. Esta camada não deve depender de nenhuma outra.

Interfaces de serviços

Contém as abstrações dos serviços da aplicação que atuam sobre o domínio.

Serviços

Contém as implementações dos serviços da aplicação. É responsável pelo fluxo da aplicação.

Infraestrutura

Implementações específicas do serviços externos que a aplicação utiliza, incluindo banco de dados, serviço de envio de e-mail e APIs de terceiros.

Contém as classes responsáveis pela configuração do acesso ao banco de dados, mapeamento das entidades no banco de dados, inicialização dos dados e migrações.

Também contém as classes de configuração e envio de e-mails.

Web

Projeto web baseado no ASP.NET Core MVC.

Testes

Testes unitários, de integração e de interface.