Mit dem Memento Design Pattern, ist es falsch, den Caretaker als Aggregat des Originators zu haben?Korrekte Implementierung von Memento
4
A
Antwort
6
Nicht unbedingt. Der Hauptzweck von Memento besteht darin, dass es möglich ist, mit verschiedenen Urhebern auf einheitliche, transparente Art und Weise umzugehen (Memento holen, später zurückgeben, um den Zustand wiederherzustellen).
Die Aggregatbeziehung verhindert das nicht unbedingt. Verschiedene Instanzen von Caretaker können Aggregate verschiedener Originatoren sein (obwohl eine Instanz von Caretaker sich nur mit einer Instanz von Originator befasst) und dennoch die Vorteile einer transparenten Zustandsregenerierung erhalten.
1
Nein, das ist in Ordnung, wenn es für Ihre Situation geeignet ist. Es ist kein großer Schritt zu verstehen, dass der Zustand des Wärters nicht Teil dessen ist, was im Memento aufbewahrt wird.
Verwandte Themen
- 1. Korrekte Implementierung von min
- 2. Memento in Javascript
- 3. Ist dies eine korrekte Implementierung von Quicksort?
- 4. Korrekte Implementierung des Stack-Verhaltens
- 5. Korrekte Implementierung der globalen Konfiguration
- 6. Korrekte Implementierung der MVC-Architektur
- 7. Korrekte Implementierung der Blöcke in der Zeichnungsansicht
- 8. Korrekte 100% IsOnline-Implementierung für asp.net-Mitgliedschaft
- 9. Korrekte Implementierung der Gaußschen Unschärfe über FFT
- 10. Korrekte Heap-Implementierung in einer Prioritätswarteschlange
- 11. Korrekte Implementierung der Methodenvererbung während der Klassenkonstruktion
- 12. Ist dies eine korrekte Implementierung von Insertion Sort?
- 13. Korrekte Art der Implementierung von SlidingDrawer in Android
- 14. Schnelles Rückgängig/Wiederholen mit Memento/Befehlsmuster?
- 15. Korrekte Implementierung der NSObject-Beschreibungsmethode für verschachtelte Klassen mit Sammlungen
- 16. Quicksort korrekte Implementierung, aber mit einigen zusätzlichen Vergleichen
- 17. Wie leitet Haskell korrekte Typklassen in der MaybeT-Implementierung ab?
- 18. Authorize.net korrekte Methode zur Implementierung der AIM-Methode in PHP?
- 19. Korrekte Aussprache von MySQL?
- 20. Korrekte Verwendung von Objekten
- 21. Korrekte Anwendung von Zugriffsmodifizierer
- 22. Korrekte Verwendung von PreparedStatement
- 23. Korrekte Verwendung von CancellationToken
- 24. korrekte Verwendung von Zend_Db
- 25. Korrekte Verwendung von ArgumentException?
- 26. korrekte Verwendung von scipy.optimize.fmin_bfgs
- 27. Korrekte Platzierung von "Inline"
- 28. Was ist die korrekte Verwendung von ConcurrentBag?
- 29. Korrekte Implementierung von clone() Für Domänenklassen, um eine Grails-Domäneninstanz zu duplizieren
- 30. Nicht korrekte Zeit von UniversalDateTime
kann ich in der statischen Variable der Klasse Memento Objekt speichern? – gaussblurinc