I. DefinitionDas Beobachtermuster definiert eine Eins-zu-viele-Abhängigkeitsbeziehung, die es mehreren Beobachterobjekten ermöglicht, gleichzeitig ein Subjektobjekt (Benachrichtiger) zu überwachen. Wenn das Subjektobjekt Änderungen am beobachteten Objekt feststellt, benachrichtigt es alle Beobachterobjekte, damit diese sich selbst aktualisieren können. Dabei spielen mehrere Rollen mit jeweils eigenen Funktionen eine Rolle:
2. AnwendungsszenarienWenn eine Änderung an einem Objekt gleichzeitig Änderungen an anderen Objekten erfordert und es nicht erforderlich ist, zu wissen, wie viele Objekte geändert werden müssen 3. Geben Sie ein BeispielWenn die trockene Konzeptbeschreibung unklar und schwer zu verstehen ist, geben Sie ein Beispiel aus dem Alltag, um es zu erklären Szenario 1: Im Bürogebäude, vor dem Computer. Eine Gruppe von Programmierern nutzte die Geschäftsreise ihres Chefs dazu, sich auf ihren Computern NBA-Spiele anzuschauen und dabei von Zeit zu Zeit aufgeregt zu schreien. In diesem Moment kam der Chef von einer Geschäftsreise zurück und sah sie zufällig, was zu einer unangenehmen Situation führte. Lösung: Um nicht vom Chef beim Faulenzen in der Firma erwischt zu werden, haben sich ein paar Leute einen Plan ausgedacht, um die Dame an der Rezeption zu bestechen. Als der Chef wieder in die Firma kam, benachrichtigte das Mädchen sofort die Programmierer und forderte sie auf, an ihre Arbeit zurückzukehren. Szenario 2: Im Bürogebäude, vor dem Computer. Eine Gruppe von Programmierern nutzte die Geschäftsreise ihres Chefs dazu, sich auf ihren Computern NBA-Spiele anzuschauen und dabei von Zeit zu Zeit aufgeregt zu schreien. Zu diesem Zeitpunkt kam der Chef von einer Geschäftsreise zurück. Als die Dame an der Rezeption sah, dass der Chef zurückkam, benachrichtigte sie sofort die Jungs, die das Spiel sahen. Zu diesem Zeitpunkt wechselten die jungen Männer schnell in den Arbeitsmodus. Szenario 2 verwendet das Beobachtermuster. Wenn der Chef zurückkommt, müssen die Programmierer ihren Paddelstatus ändern und die Dame an der Rezeption ist dafür verantwortlich, sie darüber zu benachrichtigen.
| ||||||||||||
<<: So verwenden Sie Bind zum Einrichten eines DNS-Servers
>>: Lösung für das Problem des achtstündigen Unterschieds bei der MySQL-Einfügezeit
Vorherige Wörter Zeilenhöhe, Schriftgröße und vert...
Linux verwendet Dateien als Grundlage, um die Ger...
Rand paralleler Boxen (Überlappung doppelter Ränd...
Inhaltsverzeichnis Vorwort Funktionen von Vue Nat...
RPM-Paketverwaltung Ein Verpackungs- und Installa...
Lesen Sie das Tutorial zum Einrichten eines FTP-S...
In diesem Artikelbeispiel wird der spezifische Co...
MySQL ist ein relationales Datenbankverwaltungssy...
In diesem Artikel wird der spezifische Code für J...
Im Allgemeinen können wir beim Herunterladen von ...
Vorwort Bei einem seit 4 Jahren laufenden Java EE...
Methode 1: Verwenden Sie den cmd-Befehl Öffnen Si...
Laden Sie MySQL 8.0.22 zu Ihrer Information herun...
UPD 2020.2.26 Derzeit ist Ubuntu 20.04 LTS noch n...
1. Grundlegende Konzepte //Jeder Container kann a...