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

Arquitetura simples e efetiva 📐

A ideia principal da Vertical Slice Architecture (VSA) é organizar seu código por funcionalidade e não por camadas.

Como exemplo, temos a funcionalidade de criar um curso, mostrada na imagem abaixo.

A CreateCourseController possui:

  • Autorização (apenas usuários Academic podem acessar)
  • Rota (POST /academic/courses)
  • Documentação + exemplos de requests, responses e erros
  • Chamada do CreateCourseService que executa lógica de negócio

O CreateCourseService possui:

  • Validação do input usando FluentValidation
  • Uso de Result Pattern para retornar sucesso ou erro
  • SykiDbContext para operações no banco de dados
  • Mapper para converter a entidade de domínio em DTO de resposta

Os objetos de input e output do endpoint possuem um método que retorna exemplos com valores, usados na documentação.

Por fim, é extremamente fácil entender e encontrar as coisas no projeto, pois todos os arquivos relacionados com uma determinada funcionalidade possuem o mesmo prefixo, inclusive os de testes automatizados.


Você já utilizou essa arquitetura em algum projeto? Comente abaixo!

Carregando publicação patrocinada...