Hallo,
ich hab eine Frage bei der OOP, wenn ich zu dem Punkt komme Methoden auszuführen, die schon in einem anderem Objekt vorhanden sind.
Folgendes Beispiel:
Ich hab eine Klasse Mitarbeiter mit der Methode getMitarbeiter($id) die mir alle Attribute des Mitarbeiters mit $id aus der Datenbank lädt.
An anderer Stelle existiert die Klasse Projekte, die eine Methode enthält getProjekte() und zu den Projekten gehören beliebig viele Mitarbeiter, die mit ausgegeben werden sollen.
Jetzt wäre mein Weg folgender: Für die Methode getProjekte() würde ich 2 SQL-Abfragen schreiben, welche mir die Projekte und danach die jeweiligen Mitarbeiter zu jedem Projekt lädt.
Das wäre natürlich mehr aufwand und redundanter Code, da in der Klasse Mitarbeiter schon eine Passende Methode definiert ist...
Sollte ich nun in der Methode getProjekte() die Methode Mitarbeiter::getMitarbeiter() (in dem Fall wohl eine Statische Methode) aufrufen, auch wenn diese mir evtl. mehr informationen liefert, als ich eigentlich benötige?
Zur folge hätte ich Projekte und Mitarbeiter in 2 verschiedenen Arrays und müsste Sie dann zuerst noch zusammenführen...
Wie wird das eurer Meinung am elegantesten gelöst?
Danke für eure Hilfe,
Gruß Gerrit
ich hab eine Frage bei der OOP, wenn ich zu dem Punkt komme Methoden auszuführen, die schon in einem anderem Objekt vorhanden sind.
Folgendes Beispiel:
Ich hab eine Klasse Mitarbeiter mit der Methode getMitarbeiter($id) die mir alle Attribute des Mitarbeiters mit $id aus der Datenbank lädt.
An anderer Stelle existiert die Klasse Projekte, die eine Methode enthält getProjekte() und zu den Projekten gehören beliebig viele Mitarbeiter, die mit ausgegeben werden sollen.
Jetzt wäre mein Weg folgender: Für die Methode getProjekte() würde ich 2 SQL-Abfragen schreiben, welche mir die Projekte und danach die jeweiligen Mitarbeiter zu jedem Projekt lädt.
Das wäre natürlich mehr aufwand und redundanter Code, da in der Klasse Mitarbeiter schon eine Passende Methode definiert ist...
Sollte ich nun in der Methode getProjekte() die Methode Mitarbeiter::getMitarbeiter() (in dem Fall wohl eine Statische Methode) aufrufen, auch wenn diese mir evtl. mehr informationen liefert, als ich eigentlich benötige?
Zur folge hätte ich Projekte und Mitarbeiter in 2 verschiedenen Arrays und müsste Sie dann zuerst noch zusammenführen...
Wie wird das eurer Meinung am elegantesten gelöst?
Danke für eure Hilfe,
Gruß Gerrit