Hallo, BBB,

es ist eigendlich recht einfach. 

Das Model beschreibt ein Daten Object mit Gettern und Settern. Sowiso 
"validation" 
annoationen, eventeulle Relationen. (das  wird Standard mäßig dann auf eine 
datenbank tabelle gemapped.

Das Repository. (in dem man im einfachsten fall gar nix macht da alles ererbt 
wird) dient dazu Daten aus der datenquelle zu holen. Bzw dort hin zurück zu 
speichern.

Angenommen du hast also eine Ein Model "Person". Das definiert firstName and 
lastName als Properties. 

Kannst du dir alle alle Personen mit dem namen "mayer" ganz einfach aus dem 
Repository Holen.

$personCollection = $personRepository->findByLastName('mayer');

Das Repository legt für alle Model Properties "magische" findBy<Property> 
Methoden an. 

Und du musst dich darum nicht kümmern. Wenn du Komplexere Queries brauchs. Kann 
man die nötige query natürlich bauen. 
Und wenn man die regelmäßig braucht baut man eine entsprechende findBy Methode 
in das Repository ein.

Z.b. findByBirthYearRange($startYear,$endYear) diese Methode würde dann die 
"Query zusammen bauen" und das das Repository Abfragen.

Wenn ich hier von "query" rede meine eine ExtbaseQuery SQL sollte man nach 
Möglichkeit vermeiden.

Gruss chris

-----Ursprüngliche Nachricht-----
Von: typo3-german-boun...@lists.typo3.org 
[mailto:typo3-german-boun...@lists.typo3.org] Im Auftrag von N W
Gesendet: Mittwoch, 3. Dezember 2014 16:10
An: typo3-german@lists.typo3.org
Betreff: [TYPO3-german] Re: Was hab ich denn vom Domain Driven Design?

Hallo Miteinander,

  sehr vielen Dank für Eure durchweg konstruktiven und hilfreichen Antworten. 
Es ist für mich sehr interessant, Eure Standpunkte kennenzulernen und ich freue 
mich über Eure Literaturempfehlungen und Links.

Ich bin eigentlich C-Programmierer und arbeite meist auf sehr niedriger 
Abstraktionsebene an irgendwelchen Hardware-Schnittstellen oder Optimierungen. 
Von daher habe ich bei meiner täglichen Arbeit keine Berührungspunkte mit MVC, 
da eine derartige Kategorisierung ja erst auf höherem Abstraktionslevel Sinn 
macht (ich habe normaler Weise nur mit Controllern und kaum mit Views und 
Modellen zu tun).

Ich würde sehr gerne Systemkonform arbeiten und den neuesten Entwicklungsstand 
berücksichtigen, wenn ich denn hin und wieder mal Extensions programmiere. 
Ehrlich gesagt, weiss ich aber noch nicht einmal, welche Funktionen nach 
Domain/Model und welche nach Domain/Repository gehören. Ich würde am liebsten 
weiter nach der alten Methode arbeiten, möchte aber, dass meine Extensions für 
andere Programmierer verständlich sind und auch mit zukünftigen TYPO3-Versionen 
funktionieren.

Ich werde mich eingehend mit Euren Empfehlungen beschäftigen.

Danke und Gruß, bbb
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an