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.
Svaťa
Šimara
DDD+Doctrine
Doménový model
a
Infrastruktura
Entity
• Má identitu
• Lze změnit - mutable
• Změnou prvku se identita
nemění
• Příklad
– Nákupní košík
Entity
Cart
Cart
Value ObjectValue Object
• Nemá identitu
• Identifikován hodnotou
• Nezle změnit
• Můžeme pouze vytvořit nový
změněný
• Příklad
– Cena
Value Object
Price
Price
AggregateAggregate
• Skupina objektů
• Mají smysl pouze dohromady
• Části nemají smysl samostatně
• Objekty žijí a umírají společně
Aggregate
Aggregate
Aggregate - Item
Aggregate - Item
Aggregate - Cart
Aggregate - Cart
RepositoryRepository
Repository
• Nejde o Doctrine repository
• Simuluje kolekce
– Přidej
– Vyber
– Smaž
• Doménový prvek
• Rozhraní
Cart Repository
Cart Repository - Memory
Cart Repository - Doctrine
Cart Repository - Doctrine
Domain-Driven
Design Svaťa Šimara
svatasimara.cz
simara-svatopluk/cart
@svatasimara
Upcoming SlideShare
Loading in …5
×

DDD + Doctrine

43 views

Published on

Dozvíte se, že s Doctrine lze používat čisté objekty a základní stavební prvky DDD. Na přednášce probereme
* Entity
* Value Objekty
* Agregáty
* Repozitáře
* Doctrine implementaci repozitářů

Published in: Technology
  • Be the first to comment

  • Be the first to like this

DDD + Doctrine

  1. 1. Svaťa Šimara DDD+Doctrine
  2. 2. Doménový model a Infrastruktura
  3. 3. Entity
  4. 4. • Má identitu • Lze změnit - mutable • Změnou prvku se identita nemění • Příklad – Nákupní košík Entity
  5. 5. Cart
  6. 6. Cart
  7. 7. Value ObjectValue Object
  8. 8. • Nemá identitu • Identifikován hodnotou • Nezle změnit • Můžeme pouze vytvořit nový změněný • Příklad – Cena Value Object
  9. 9. Price
  10. 10. Price
  11. 11. AggregateAggregate
  12. 12. • Skupina objektů • Mají smysl pouze dohromady • Části nemají smysl samostatně • Objekty žijí a umírají společně Aggregate
  13. 13. Aggregate
  14. 14. Aggregate - Item
  15. 15. Aggregate - Item
  16. 16. Aggregate - Cart
  17. 17. Aggregate - Cart
  18. 18. RepositoryRepository
  19. 19. Repository • Nejde o Doctrine repository • Simuluje kolekce – Přidej – Vyber – Smaž • Doménový prvek • Rozhraní
  20. 20. Cart Repository
  21. 21. Cart Repository - Memory
  22. 22. Cart Repository - Doctrine
  23. 23. Cart Repository - Doctrine
  24. 24. Domain-Driven Design Svaťa Šimara svatasimara.cz simara-svatopluk/cart @svatasimara

×