Hallo,
ich habe mal ein paar Fragen bezüglich der im Titel stehenden Pattern.
Zunächst aber einmal ein Beispiel. In meiner Firma haben wir bestimmte Models um Daten aus einer Datenbank zu ermitteln. Angenommen die Tabelle heisst "User". Nun gibt es 2 Models, eins heisst User (extends DatabaseTableModel), das andere UserList (extends DatabaseTableListModel implements Iterrator).
Wenn man nun 1 Datensatz auslesen (CRUD) will nimmt man das User-Objekt. Möchte man mehrere Datensätze auslesen (CRUD) muss man das UserList-Objekt nehmen.
Ein UserList-Objekt enthält für jede Zeile in der Datenbank ein User-Objekt. Durch die Implementierung des Iterrators kann man das Objekt in einer foreach durchschleifen.
Darin seh ich allerdings mehrere Nachteil. Man muss 2 User-Models pflegen und natürlich auch die DatabaseTableModel und DatabaseTableListModel Klasse.
Bei Zend habe ich es so verstanden, das die im Endeffekt nur das UserList-Objekt hätten, dieser beinhaltet dann aber kein User-Objekt pro Zeile sondern ein UserList-Objekt pro Zeile. Sehe ich das richtig? Dann hätte also jede einzelne Zeile den Iterrator implementiert?
Ist der Weg den meine Firma da geht überhaupt ein "vernünstiges" Pattern? Besser gesagt, ist es eins aus dem Titel genannten Pattern?
Gruß
ich habe mal ein paar Fragen bezüglich der im Titel stehenden Pattern.
Zunächst aber einmal ein Beispiel. In meiner Firma haben wir bestimmte Models um Daten aus einer Datenbank zu ermitteln. Angenommen die Tabelle heisst "User". Nun gibt es 2 Models, eins heisst User (extends DatabaseTableModel), das andere UserList (extends DatabaseTableListModel implements Iterrator).
Wenn man nun 1 Datensatz auslesen (CRUD) will nimmt man das User-Objekt. Möchte man mehrere Datensätze auslesen (CRUD) muss man das UserList-Objekt nehmen.
Ein UserList-Objekt enthält für jede Zeile in der Datenbank ein User-Objekt. Durch die Implementierung des Iterrators kann man das Objekt in einer foreach durchschleifen.
Darin seh ich allerdings mehrere Nachteil. Man muss 2 User-Models pflegen und natürlich auch die DatabaseTableModel und DatabaseTableListModel Klasse.
Bei Zend habe ich es so verstanden, das die im Endeffekt nur das UserList-Objekt hätten, dieser beinhaltet dann aber kein User-Objekt pro Zeile sondern ein UserList-Objekt pro Zeile. Sehe ich das richtig? Dann hätte also jede einzelne Zeile den Iterrator implementiert?
Ist der Weg den meine Firma da geht überhaupt ein "vernünstiges" Pattern? Besser gesagt, ist es eins aus dem Titel genannten Pattern?
Gruß
Kommentar