Es gibt mehrere Gründe nicht allgemein als gutes Design angesehen, von denen einige Probleme beim Testen der Einheit und Schwierigkeiten bei der Handhabung von Fehlern verursachen.
Der Hauptgrund, warum ich dies nicht tun würde, ist, dass Ihr Objekt und die Datenzugriffsebene jetzt sehr eng miteinander verbunden sind. Dies bedeutet, dass jede Verwendung dieses Objekts außerhalb des ursprünglichen Entwurfs erhebliche Nacharbeiten erfordert. Was wäre zum Beispiel, wenn Sie auf eine Instanz stießen, in der Sie dieses Objekt verwenden mussten, ohne dass Werte zugewiesen wurden, um beispielsweise eine neue Instanz dieser Klasse beizubehalten? Sie müssen jetzt entweder den Konstruktor überladen und dann sicherstellen, dass Ihre gesamte andere Logik diesen neuen Fall behandelt oder erben und überschreiben.
Wenn das Objekt und der Datenzugriff entkoppelt sind, können Sie eine Instanz erstellen und dann nicht hydratisieren. Wenn Sie ein anderes Projekt verwenden, das dieselben Entitäten verwendet, aber eine andere Persistenzebene verwendet, sind die Objekte wiederverwendbar.
auch sagen, dass ich den einfacheren Weg der Kopplung in Projekten in der Vergangenheit stattgefunden habe :)
"Nachdem ich gesagt habe, dass ich den leichteren Weg der Kopplung in Projekten in der Vergangenheit genommen habe :)" Ich mag das, schlägt vor, dass der Kontext sehr wichtig ist. – Sully