ddd – domain driven design

14
GUMA-RS Prática DDD – Domain Driven Design saraiva :D)

Upload: jonatas-saraiva

Post on 06-Jun-2015

1.395 views

Category:

Technology


1 download

DESCRIPTION

Apresentação sobre Domain Driven Design (DDD) na reunião do Guma-RS

TRANSCRIPT

Page 1: DDD – Domain Driven Design

GUMA-RSPrática

DDD – Domain Driven Design

saraiva :D)

Page 2: DDD – Domain Driven Design

Porquê DDD?

Scrumcerimónias?????débitos

técnicos?????

“Gerência”

Engenharia

Page 3: DDD – Domain Driven Design

Porquê DDD?

DDD, TDD, IC

“Gerência”

Engenharia

Scrumcerimónias

Page 4: DDD – Domain Driven Design

DDDDomínio

Page 5: DDD – Domain Driven Design

Modelos

* Modelo não é UML.

* Modelos são abstrações.

* Equipe e especialista do

domínio definem o modelo.

DDD

século 18 –

china

Page 6: DDD – Domain Driven Design

Como ligar o modelo a

implementação?

DDD

Page 7: DDD – Domain Driven Design

OOP e outras cositas mas!!

DDD

Page 8: DDD – Domain Driven Design

Linguagem Onipresente (Ubíqua)

DDD

Page 9: DDD – Domain Driven Design

Entidades

DDD

- São objetos que

possuem :

• identidade para o

domínio

• representação

distintas

Page 10: DDD – Domain Driven Design

Objetos de Valor* Não possui identidade para o domínio

* Suas propriedades o identificam

* São imutáveis

DDD

Page 11: DDD – Domain Driven Design

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

Page 12: DDD – Domain Driven Design

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

Page 13: DDD – Domain Driven Design

Repositórios* Guardar e recuperar os objetos

* Não tem regra de negócio

DDD

Page 14: DDD – Domain Driven Design

Perguntas?

@jonatassaraiva

jonatassaraiva.net