![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 25 Pomógł: 0 Dołączył: 15.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam mały problem odnośnie rozplanowania klasy NEWS (klasy aktualności) oraz klasy NEWS_CATEGORY (kategorii aktualności). Jako że: - news posiada jedną kategorię do której może być przypisany, - jedna kategoria posiada wiele newsów czyli zachodzi relacja jeden do wielu. nie wiem czy agragetem głównym "aggregate root" w tym przypadku będzie klasa NEWS czy też NEWS_CATEGORY. Myślę że powinno to wyglądać mniej więcej tak jak poniżej ale pewien nie jestem:
Nie wiem też czy lepiej tworzyć repozytorium zarówno dla newsów jak i kategorii czy też stworzyć wspólne (podobnie ma się sprawa z fabryką). Wydaje mi się że skoro kateogie newsów tyczą się wyłącznie newsów to można zrobić wspólne repozytorium. Liczę na jakieś wskazówki, Pozdrawiam |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 4 Dołączył: 18.09.2010 Ostrzeżenie: (0%) ![]() ![]() |
To zależy od wielkości tych klas. Jeżeli zrobisz wszystko w jednej i będziesz musiał dawać prefiks "category" dla metod dotyczących kategorii newsów by się nie pogubić, to lepszym rozwiązaniem jest zrobienie tego w sposób jaki zaprezentowałeś. Zaś w przypadku, gdy cała klasa ograniczy się do 5-6 metod, to byłby to nieco przerost formy nad treścią, aczkolwiek modyfikacja byłaby łatwiejsza. Takie moje skromne zdanie.
-------------------- eXtreme-Fusion CMS - polski, darmowy system zarządzania treścią z rozbudowanym wsparciem technicznym.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 25 Pomógł: 0 Dołączył: 15.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
Szkoda że właściwie nie ma żadnego dobrego artykułu w internecie który na przykładzie jakiegoś systemu newsów lub czegoś podobnego wyjaśniałby zasadę funkcjonowania DDD.
Najlepsze na jakie trafiłem to te poniżej: - http://www.typo3-media.com/blog/mvc-news-example.html za ukazanie ciekawego modelu dziedziny. - http://blog.fedecarg.com/2009/03/11/domain...-architectures/ chyba najlepszy art. w internecie na ten temat. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 879 Pomógł: 189 Dołączył: 14.06.2006 Skąd: Bytom Ostrzeżenie: (0%) ![]() ![]() |
To chyba dlatego nie ma, że system newsów to nie jest dobra dziedzina dla DDD. Zdecydowanie można wykorzystać building blocks, ale cała metodologia to trochę za dużo.
Co do Twojego problemu to mam pytanie dlaczego założyłeś, że kategoria to encja a nie value object? Gdybyś z kategorii zrobił VO nie tracisz nic, wiele zyskujesz i (z mojego punktu widzenia) odzwierciedlasz dziedzinę. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 04:23 |