Ich denke über die Implementierung eines Domain Driven Design-Ansatzes (ähnlich dem beschriebenen here), aber möchte es mit dem Doctrine ORM integrieren. Hat jemand irgendeinen Erfolg gehabt, etwas so zu tun?Verwenden von Doctrine mit domänenbasiertem Design
Mein erster Instinkt war, Doctrine als DAO-Layer zu verwenden, aber es scheint ein wenig verworren für Doctrine, um meine Datenbankfelder abzubilden, und meine Entitätsobjekte entsprechen (im Wesentlichen) demselben Satz von Feldern im Doctrine-Objekt.
Mein ursprüngliches Ziel war es, meine gesamte DQL/Abfragelogik von meinen Domain-Entities zu trennen, aber jetzt fühle ich mich im Design-Pattern-Land ein wenig verloren.
Ich weiß Doctrine 2 soll eine viel freundlichere Herangehensweise an DDD-Techniken bieten, aber ich bin mir nicht sicher, ob ich so lange warten möchte. Macht das, was ich machen will, Sinn, oder sollte ich einen anderen Ansatz finden?
Danke.
Danke. Ich denke, diese Antwort spiegelt meine Erfahrungen vollständig wider. Doctrines quadratischer Stift passt einfach nicht richtig in das runde Loch von DDD. Am Ende behandelte ich meine Doctrine_Record-Klassen als meine Entitäten und implementierte eine grundlegende Repository-Klasse mit Doctrine_Table als DAO-Layer. Während es mir den größten Teil der Trennung gibt, die ich wollte, fühlt es sich ein bisschen ungeschickt oder über-architected an, da die Repositories manchmal überflüssig sind. –
Stolperte über diese Antwort von Google und dachte, es wäre erwähnenswert, dass dies jetzt veraltet ist, da Doctrine2 das Data Mapper-Muster implementiert und Entitäten POPOs sind, was es perfekt für DDD macht und wunderbar an SRP hält. –