Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Object-oriented programming _ DDD - agregat a CRUD

Napisany przez: deser11 18.09.2019, 17:47:09

Witam,

Mam agregat Product. Produkt może mieć wiele komentarzy, ale komentarze to zwykła encja crudowa, i mogę nimi zarządzać w jakimś tam panelu zupełnie poza moją domeną.

Czy w takim wypadku:

1. Comment powinien być moim modelem domenowym? (encją) [a może do cruda model crudowy, a w domenie drugi?)
2. Produkt powinien zawierać tylko referencję do komentarzy np. CommentsIds czy cały obiekt CommentsCollection (czy coś w stylu kolekcji)?

Przede wszystkim chodzi mi o to jak modeluje się domenę, gdy wiem, że gdzieś tam część modeli będzie też zarządzana crudowo.

Dzięki!

Napisany przez: destroyerr 19.09.2019, 20:10:50

DDD wykorzystuje się dla modelowania złożonych dziedzin. Jeżeli Twoja dziedzina składa się z produktu i komentarza i nie ma żadnych innych wymagań to nie jest to złożona dziedzina. Dla modelowania takiego przypadku służy właśnie CRUD. Jeżeli już koniecznie chcesz mieć DDD, to produkt i komentarz są encjami tego samego agregatu a produkt jest jego korzeniem. Skoro są w jednym agregacie to produkt zawiera komentarze, a nie referencje do nich. To jest wszystko co można zrobić dla tak zawężonego kontekstu.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)