Das Iterator Pattern ist ein Verhaltensmuster der GoF von Erich Gamma, Richard Helm, Ralph Johnson und John Vlissides, das sequenziellen Zugriff auf die Elemente eines Aggregatobjekts bietet, ohne dessen zugrunde liegende Repräsentation offenzulegen. Die Traversierung wandert in ein eigenes Iterator-Objekt, was mehrere Traversierungen desselben Aggregats und ein einheitliches Interface für verschiedene Strukturen erlaubt, etwa Tiefen- und Breitensuche in einem Baum.
GoF-Iterator Pattern
Details
- Vollständiger Name
-
GoF Iterator Pattern (Behavioral)
Absicht:
Biete eine Möglichkeit, sequenziell auf die Elemente eines Aggregatobjekts zuzugreifen, ohne dessen zugrunde liegende Repräsentation offenzulegen.
Wann zu verwenden:
-
Wenn du auf den Inhalt eines Aggregatobjekts zugreifen musst, ohne dessen interne Repräsentation offenzulegen
-
Wenn du mehrere Traversierungen von Aggregatobjekten unterstützen möchtest
-
Wenn du ein einheitliches Interface zur Traversierung verschiedener Aggregatstrukturen bereitstellen möchtest
Prompt-Beispiel:
"Implementiere einen Iterator nach GoF für die benutzerdefinierte Baumstruktur, der verschiedene Traversierungsstrategien (Tiefe, Breite) unterstützt."
Verwandte Anker:
-
GoF Design Patterns (Umbrella)