Jaka jest różnica między repozytorium a usługą? Wydaje się, że tego nie rozumiem.
Mówię o dostępie do danych przez warstwę dostępu do danych, zwykle z linq do sql.
Bardzo często widzę repozytoria z prostymi metodami CRUD i usługi z metodami bardziej specyficznymi dla biznesu.
Jako przykład możemy wziąć ten post na blogu. Jeśli spojrzysz na interfejsy na dole (obrazy), ma on dwa repozytoria i dwie usługi. Skąd wiadomo, co gdzie umieścić?
Jak powiedziałem, repozytoria wydają się być bardziej zorientowane na operacje podobne do CRUD, a usługi zorientowane na biznes.
Dzięki
design-patterns
alexn
źródło
źródło
Odpowiedzi:
Repozytorium jest zasadniczo fasadą trwałości, która wykorzystuje semantykę stylu kolekcji (Dodaj, Aktualizuj, Usuń) w celu zapewnienia dostępu do danych / obiektów. Jest to sposób na oddzielenie sposobu przechowywania danych / obiektów od reszty aplikacji.
Usługa zapewnia koordynację lub inne „usługi” wymagane do obsługi aplikacji. Różnią się one bardzo, ponieważ usługi zazwyczaj nie wiedzą, jak uzyskać dostęp do danych z trwałości, a repozytoria zwykle mają dostęp tylko do danych / obiektów wszelkich usług, które możesz mieć.
źródło
repository
=collection
zbackbone.js
lubrepository
=service
zangular
?Repozytorium to miejsce, w którym przechowywane są dane. Usługa manipuluje danymi.
W porównaniu z rzeczywistą sytuacją, jeśli twoje pieniądze są przechowywane w skarbcu w banku, skarbiec jest repozytorium. Usługą jest kasjer, który dokonuje wpłat, wypłat itp.
źródło
Powiedziałbym jako pierwsza próba, w ogólnym sensie (dopóki nie podasz więcej kontekstu, jeśli go masz):
źródło