Meine (nicht standardmäßigen) Laiendefinitionen
POCO
- Einfaches altes% Insert_Your_Language% -Objekt. Ein Typ ohne Logik. Es werden nur Daten im Speicher gespeichert. Normalerweise werden darin nur automatische Eigenschaften angezeigt, manchmal Felder und Konstruktoren.
Domain object
Eine Instanz einer Klasse, die sich auf Ihre Domain bezieht. Ich würde wahrscheinlich Satelliten- oder Dienstprogrammobjekte vom Domänenobjekt ausschließen, z. B. enthalten Domänenobjekte in den meisten Fällen keine Elemente wie Protokollierung, Formatierung, Serialisierung, Verschlüsselung usw. - es sei denn, Sie erstellen speziell ein Produkt zum Protokollieren, Serialisieren, Formatieren oder Verschlüsseln .
Model object
Ich denke ist das gleiche wie Domain object
. Leute neigen dazu, dies austauschbar zu verwenden (ich kann mich irren)
Entity
eine Klasse, die hat id
Repository
Eine Klasse, die von einer Seite mit einem Datenspeicher (z. B. einer Datenbank, einem Datendienst oder ORM) und mit dem Dienst, der Benutzeroberfläche, der Geschäftsschicht oder einem anderen anfragenden Körper spricht. Es verbirgt normalerweise alle datenbezogenen Dinge (wie Replikation, Verbindungspooling, Schlüsselbeschränkungen, Transaktionen usw.) und macht es einfach, nur mit Daten zu arbeiten
Service
Software, die einige Funktionen normalerweise über die öffentliche API bereitstellt. Abhängig von der Ebene kann es sich beispielsweise um einen in sich geschlossenen RESTful-Container oder eine Klasse handeln, mit der Sie eine bestimmte Instanz des erforderlichen Typs finden können.
Ursprüngliche Antwort
Dies sind Begriffe , die hauptsächlich im (verteilten) domänengesteuerten Design verwendet werden. Sie sind nicht gleich. Der Begriff Modellobjekt kann als Synonym für das Domänenobjekt verwendet werden .
Domänenobjekte. Objekte aus dem geschäftsspezifischen Bereich, die für den Domain-Experten von Bedeutung sind. Domänenobjekte werden meist durch Entitäten und Wertobjekte dargestellt. Im Allgemeinen tragen die meisten Objekte, die in der Domänenschicht leben, zum Modell bei und sind Domänenobjekte.
Entität. Ein Objekt, das grundsätzlich nicht durch seine Attribute definiert ist, sondern durch einen Faden der Kontinuität und Identität. (Das heißt, es muss einen Ausweis haben )
POCO. Ein einfaches Objekt ohne komplizierte Logik, normalerweise hat es nur wenige Eigenschaften und wird mit ORM oder als Datenübertragungsobjekt verwendet
class Person
- Entität und POCO, Instanz dieser Klasse ist Domain Object
class PersonService
- Service
class PersonRepository
- Repository