• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

"Odciążenie" wzorca repozytorium

0 głosów
322 wizyt
pytanie zadane 4 czerwca 2021 w PHP przez CSSoup Mądrala (6,460 p.)

Hej,

Czy poprawnym podejściem będzie stosowanie wzorca Repozytorium tylko do tego aby pobierać dane z bazy, a całą logikę tworzenia danych modeli wrzucić do serwisów? Przykładowo, mamy użytkownika, który jest tworzony przy użyciu UserService jednak pobieranie pojedynczego użytkownika, listy, przefiltrowanej listy itd. odbywa się przy pomocy UserReposiotry.

Robię tak ponieważ w mojej bazie mam dosyć rozbudowane relacje, a takie tworzenie użytkownika wykorzystuje kilka modeli mi.in adres, informacje osobowe itd. więc nie chcę tworzyć jednej wielkiej klasy Repozytorium, która robi dosłownie wszystko, więc chciałbym ograniczyć jej rolę jedynie do pobierania danych z bazy.

1 odpowiedź

+1 głos
odpowiedź 4 czerwca 2021 przez Wiciorny Ekspert (283,440 p.)
wybrane 6 czerwca 2021 przez CSSoup
 
Najlepsza

Czy poprawnym podejściem będzie stosowanie wzorca Repozytorium tylko do tego aby pobierać dane z bazy, a całą logikę tworzenia danych modeli wrzucić do serwisów

Repozytorium nie służy do umieszczania w nim logiki biznesowej, wiec to jest konieczne wręcz powiem. 
Repozytorium to warstwa Perzystencji i  dostępu do bazy danych, gdzie powinna stanowić jednolity interfejs komunikacji z bazą a warstwami wyższego rzędu. 

Logikę tworzenia danych modeli 

Logikę modeli tworzysz w klasach, encjach dla przykładu a nie w osobnych bytach. Serwis nie jest modelem w architekturze. a warstwą. 
Więc jak najbardziej dobrym rozwiązaniem jest podzielenie tego na odpowiednie warstwy z silną enkapsulacją tego co ma być w danej watswie, a tworząc INTERFEJS DOSTĘPU tylko ten niezbędny na zewnątrz- np do komunikacji. 

Podobne pytania

0 głosów
1 odpowiedź 400 wizyt
pytanie zadane 24 marca 2021 w JavaScript przez CSSoup Mądrala (6,460 p.)
0 głosów
2 odpowiedzi 351 wizyt
pytanie zadane 7 listopada 2020 w Algorytmy przez CSSoup Mądrala (6,460 p.)
0 głosów
1 odpowiedź 958 wizyt

93,757 zapytań

142,716 odpowiedzi

323,363 komentarzy

63,353 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...