Junior — Middle
Haben Sie das Muster 'Beobachter' in Ihren Projekten angewendet?
sobes.tech KI
Antwort von AI
Ja, das Muster "Beobachter" (Observer) wurde in PHP-Projekten verwendet, um ein ereignisbasiertes Modell zu implementieren, bei dem ein Objekt (Subjekt) viele andere Objekte (Beobachter) über Änderungen seines Zustands informiert.
Beispiel für die Verwendung in PHP:
interface Observer {
public function update(string $eventData);
}
class Subject {
private $observers = [];
public function attach(Observer $observer) {
$this->observers[] = $observer;
}
public function notify(string $eventData) {
foreach ($this->observers as $observer) {
$observer->update($eventData);
}
}
public function changeState() {
// Zustand ändern
$this->notify('Zustand geändert');
}
}
class ConcreteObserver implements Observer {
public function update(string $eventData) {
echo "Benachrichtigung empfangen: $eventData\n";
}
}
$subject = new Subject();
$observer = new ConcreteObserver();
$subject->attach($observer);
$subject->changeState();
Dieser Ansatz hilft, die Logik der Zustandsänderung von der Reaktion auf diese Änderungen zu trennen, was die Erweiterbarkeit und Wartbarkeit des Codes verbessert.