Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Domain Driven Design (DDD)

666 views

Published on

Introdução ao Domain Driven Design. Esta palestra aborda linguagem ubíqua, arquitetura em camadas, elementos da camada de domínio, características dos projetos em que vale a pena aplicar DDD e características dos projetos em que não vale a pena aplicar DDD

Published in: Software
  • Be the first to comment

Domain Driven Design (DDD)

  1. 1. Mauro Sérgio da Costa Leal
  2. 2. Mauro Sérgio da Costa Leal • Bacharel em Ciência da Computação • Arquiteto de software • Desenvolvedor web na plataforma .NET • Entusiasta de DDD, padrões de projeto e boas práticas de programação
  3. 3. Agenda O que é DDD Arquitetura em camadas Camada de domínio Quando deve ser utilizado
  4. 4. O que é domínio?
  5. 5. Múltiplos dialetos
  6. 6. Confrontos Modelo orientado a objetos x Modelo anêmico Refatoração x Contornos Separação de responsabilidades x Alto acoplamento Camada de Regras de Negócio x Interfaces inteligentes
  7. 7. Arquitetura em camadas
  8. 8. Domínio – Entidades e Objetos de Valor Conta Saque Cédula
  9. 9. Domínio - Agregados Pedido Cliente Itens Produto
  10. 10. Domínio - Fábricas
  11. 11. Domínio - Serviços
  12. 12. Mapa de Navegação
  13. 13. Quando não utilizar DDD Aplicações CRUD Aplicações com poucos casos de uso Aplicações com ciclo de vida pequeno
  14. 14. Quando utilizar DDD Aplicações com muitas regras de negócio Não conseguimos prever a complexidade Longo ciclo de vida Domínio desconhecido por todo o time
  15. 15. Por que utilizar DDD? Consenso entre os especialistas do domínio Melhor experiência do usuário Modelagem ágil, iterativa e contínua Software para todos entenderem
  16. 16. Referências
  17. 17. Referências
  18. 18. Referências
  19. 19. Mauro Sérgio da Costa Leal mauroscl@gmail.com

×