Wpis z mikrobloga

Hej #programowanie, czy piszac aplikacje z uzyciem ddd w javie pominno sie izolowac jpa od warstwy domeny?
Z jednej strony domena powinna byc wolna od adnotacji z jpa, ale z drugiej konwersja miedzy warstwami to chyba proszenie sie o klopoty, szczegolnie przy rozbudowanych relacjach i lazy loading.
#java #spring
  • 9
  • Odpowiedz
javie pominno sie izolowac jpa od warstwy domeny?


@lol_nope: tak.
Lazy loading to wlasciwosc warstwy danych i jesli chcesz jej uzywac jawnie gdzie indziej - to masz tzw. wyciek odpowiedzialnosci (chyba tak to bedzie po polsku :P)
  • Odpowiedz
Czyli repozytorium powinno zwracać Aggregate Root z załadowanymi wszystkimi zależnościami nie zwracając uwagi na lazy?


@lol_nope: repozytorium powinno zwracac to, co jest potrzebne i o co zostalo zapytane.
  • Odpowiedz
  • 0
@edgar_k: czyli repo nie musi zawsze zwracac obiektu lub listy obiektow tej samej klasy, czyli aggregaate root?
Troche mi sie to juz miesza, bo dopiero zaczynam sie wgryzac w ddd I probuje cos napisac, ale gubie sie w podstawach.
  • Odpowiedz
  • 0
@edgar_k: czy w takim razie ma sens taka architektira, w ktorej mam repozytoria domenowe, ktore gadaja z repozytoriami jpa np ze spring-data I robia mapowania jpa <-> agregaty?
  • Odpowiedz
czy w takim razie ma sens taka architektira, w ktorej mam repozytoria domenowe, ktore gadaja z repozytoriami jpa np ze spring-data I robia mapowania jpa <-> agregaty?


@lol_nope: myslisz zupelnie nie tymi kategoriami co trzeba. JPA, spring-data etc to szczegoly techniczne. Pomysl o podziale logicznym i juz.
  • Odpowiedz
@edgar_k: tak, cały czas myśle o domenie w kontekście jpa i tabel, chociaż wiem, że nie powinienem :p
tylko, że właśnie jeden z problemów które napotkałem to spięcie warstwy logiki z warstwą techniczną...
  • Odpowiedz
  • 0
@edgar_k: jak wiec powinna wygladac architektura na styku domeny I warstwy zapisu do db? Zakladajac, ze chcialbym uzyc jpa I spring- data, ale przy tym drugim sie nie upieram.
  • Odpowiedz