Um Ihre Frage zu beantworten, ich denke, es ist sinnvoll, eine klare Unterscheidung zwischen der data mapper, die Tabellen auf Objekte und die repository Karten zu machen macht:
Ein Repository
vermittelt zwischen der Domäne und Datenzuordnung Schichten
Während ein Data Mapper
verschiebt Daten zwischen Objekten und einer Datenbank
Also, wenn ich Ihre Frage richtig verstanden habe, sind Sie eigentlich reden über die Daten Mapper.
Ja, das Erstellen von Datenmappern, die zu größeren Mappern zusammengesetzt werden können, ist ein guter Ansatz. Es fördert die Trennung von Anliegen und macht die einzelnen Mapper einfach.
Repositories auf der anderen Seite sollten pro Aggregat verwendet werden. Erstellen Sie ein Repository für jedes Aggregat in Ihrer Domäne. Das bedeutet auch, dass das Repository nur mit ganzen Aggregaten und nicht mit Entitäten funktioniert. Um sein Ziel zu erreichen, kann das Repository die (zusammengesetzten) Datenmapper verwenden. So beziehen sich die beiden Konzepte.
Ich denke, das sollte in CodeReview zusammen mit einem relevanten Arbeitscode gefragt werden. – Alexei
Diese Frage kann auf eine einfache Art und Weise beantwortet werden, es ist kein "es kommt auf" Art der Antwort. – MikeSW
Zustimmen. @DavidG und die anderen, kannst du bitte auf "meinungsbasiert" nachlesen und aufhören, Q's so zu schließen? Weil es nicht der erste ist. – guillaume31