GUMA-RS
        Prática
DDD – Domain Driven Design




        saraiva :D)
Porquê DDD?


                 “Gerência”
   Scrum
    cerimónias


?????débitos     Engenharia
técnicos?????
Porquê DDD?


                “Gerência”
   Scrum
   cerimónias



DDD, TDD, IC    Engenharia
DDD
      Domínio
DDD
Modelos
 * Modelo não é UML.
 * Modelos são abstrações.
 * Equipe e especialista do
 domínio definem o modelo.



                              século 18 – china
DDD


Como ligar o modelo
 a implementação?
DDD

OOP e outras
cositas mas!!
DDD
Linguagem Onipresente (Ubíqua)
DDD
Entidades

            - São objetos que possuem :
            • identidade para o domínio
            • representação distintas
DDD
Objetos de Valor
 * Não possui identidade para o domínio
 * Suas propriedades o identificam
 * São imutáveis
DDD
Agregações
* Grupo de objetos
* Um objeto filho não tem o menor sentido sem o seu “pai”
* Agregações definem fronteiras claras (raiz )
* Toda alteração de um agregado passam pela raiz
* Toda referência de um agregado passa pela raiz
* Quando a raiz do é excluída seus agregado também são
* Regras de negócio são garantidas na raiz e nos agregados
DDD
Serviços
* Operações importantes que não se encaixam em
entidades e objetos de valores
* Necessidade de trabalhar com mais de uma entidade
DDD
Repositórios
* Guardar e recuperar os objetos
* Não tem regra de negócio
Perguntas?




  @jonatassaraiva
  jonatassaraiva.net

DDD – Domain Driven Design