Estrutura Geral do Projeto - Yago-Captain/GeneralNotes GitHub Wiki

Estrutura dos Diretórios do Projeto

Primeiramente, apresento a estrutura principal das bibliotecas de classes, diretórios e arquivos da nossa aplicação. Abaixo está uma imagem que representa todas elas:

  • src
    • back
      • MyGeneralNotes.API
      • MyGeneralNotes.Application
      • MyGeneralNotes.Domain
      • MyGeneralNotes.Infrastructure
    • shared
      • MyGeneralNotes.Communication
      • MyGeneralNotes.Exceptions

A estrutura do projeto está organizada da seguinte maneira:

  • src: Este diretório contém o código-fonte do projeto, incluindo bibliotecas de classes, diretórios e outros arquivos necessários para o funcionamento da aplicação.
  • back: Este diretório contém o backend da aplicação, que está dividido em vários subdiretórios, cada um responsável por diferentes aspectos da lógica de negócios e da infraestrutura do sistema.
  • shared: Este diretório contém recursos compartilhados entre diferentes partes do sistema.

Detalhamento das Bibliotecas de Classes

Diretório back

  • MyGeneralNotes.Domain
    Esta biblioteca de classes contém as entidades e enums do seu domínio, bem como interfaces que definem contratos para a lógica do usuário, rotinas de exercícios e questões de segurança. Ela também contém classes de extensão que fornecem funcionalidades adicionais que são usadas em todo o domínio.

  • MyGeneralNotes.Infrastructure
    Esta biblioteca de classes contém código que fornece acesso ao banco de dados e realiza a geração de tabelas. Ela também contém implementações das interfaces definidas no domínio. Além disso, este diretório contém outras configurações e serviços de infraestrutura necessários para o funcionamento do aplicativo.

  • MyGeneralNotes.Application
    Esta biblioteca de classes lida com os casos de uso da aplicação. Ela coordena as operações de alto nível que envolvem o uso de várias entidades de domínio e serviços.

  • MyGeneralNotes.API
    É a interface que gerencia a comunicação no seu aplicativo. Ela recebe requisições, valida os dados dessas requisições, as direciona para os controllers apropriados, trata erros que possam ocorrer e, por fim, gera e envia uma resposta.

Diretório shared

  • MyGeneralNotes.Communication
    Esta biblioteca de classes contém classes e métodos para facilitar a comunicação entre diferentes componentes ou serviços.

  • MyGeneralNotes.Exceptions
    Esta biblioteca de classes contém classes personalizadas para lidar com as exceções que podem ocorrer durante o uso da aplicação.

Conhecendo o projeto

O primeiro subdiretório a ser abordado é o Domain, localizado dentro da pasta "back". Aqui reside o coração do nosso sistema, onde definimos as entidades essenciais, os contratos que regem a lógica do negócio e as interfaces que garantem a consistência e a segurança das operações.


Próxima: MyGeneralNotes.Domain

⚠️ **GitHub.com Fallback** ⚠️