Microserviços com Hexagonal Architecture DDD TDD CQRS SOLID

Utilizando DDD, Hexagonal architecture com CQRS para desenvolvimento moderno de microserviços e aplicações web testáveis

Ratings: 4.79 / 5.00




Description

Neste curso prático mas com boa base teórica você irá aprender a utilizar técnicas altamente avançadas de desenvolvimento de micro serviços ou aplicações web utilizando:

  1. DDD ( Domain Driven Design ), utilizando alguns dos seus conceitos chave como Dtos, ValueObjects, Entities and Models, Aggregators, definição de bounded context etc

  2. Hexagonal Architecture como padrão arquitetural principal no entanto faremos um paralelo constante com a Clean Architecture

  3. TDD, onde o foco será a escrita de código altamente testável

  4. CQRS para separação de comandos e queries, de forma que quando for desejável pode-se separar leitura e escrita em bancos separados, ou até mesmo em micro serviços separados

  5. SOLID principles, onde o mesmo será a base para organização e definição de padrões mínimos de qualidade do código, visando principalmente single responsability principle, open and close principle e dependency inversion com injeção de dependência

  6. State machine patterns, iremos utilizar este poderisissimo pattern para mudança de estado de entidades + 100% de unit test coverrage

  7. Result Pattern para comunicação entre camadas

  8. Null pattern para controle de fluxo de exceções

  9. Injeção de dependência

  10. Entity framework + migrations

  11. Feature sliding


Além disso, adquirirá uma boa noção de design de micro serviços do ponto de vista de determinar o escopo de cada um, como ele interage com outros micro serviços, como são organizadas as suas camadas, como as camadas comunicam-se umas com as outras e muito mais.

What You Will Learn!

  • Modelar e desenhar sistemas web baseados em microserviços definindo dependencias, fluxo de comunicação, definição de responsabilidades e etc
  • Utilizar Hexagonal architecture para desenvolvimento de microserviços testaveis e com baixo acoplamento
  • Utilizar alguns conceitos de DDD para definir e modelar microserviços como bounded context, DTOs, ValueObjects, Aggregators etc
  • Utilizar CQRS para separar comandos e queries de seus microserviços
  • Escrever unit tests que REALMENTE agregam valor e protegem sua aplição

Who Should Attend!

  • Programadores e Engenheiros de software
  • Profissionais buscando expandir sua experiência com conhecimentos mais avançados