Zpo-6-wyk-Slajd27: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Bwalter (dyskusja | edycje)
Nie podano opisu zmian
 
Bwalter (dyskusja | edycje)
Nie podano opisu zmian
 
Linia 1: Linia 1:
==Przykład(1)==
==Memento: uczestnicy==


[[Image:zpo-6-wyk-Slajd27.PNG|Przykład(1)]]
[[Image:zpo-6-wyk-Slajd27.PNG|Memento: uczestnicy]]




Każda z tych zmiennych jest przekształcana w metodę o tym samym typie, która zwraca tę samą wartość.  
Szczególną rolę we wzorcu odgrywają dwie klasy: Originator, który jest twórcą i właścicielem wszystkich migawek stanu, oraz Memento, której obiekty przechowują stan Originatora.  


W efekcie w wyrażeniu zamiast zmiennych pojawiają się metody, które nie utrudniają w takim stopniu dalszych operacji refaktoryzacyjnych.
Obiekt Originator musi posiadać możliwość utworzenia obiektu Memento oraz odczytania jego zawartości w celu przywrócenia na tej podstawie poprzedniego stanu. Memento przechowuje stan obiektu Originator zapisany w dowolnym momencie; pozwala też na dostęp do niego obiektowi Originator, natomiast uniemożliwia operacje na migawce wszelkim innym obiektom. Przykładem jest obiekt Caretaker, który zarządza utworzonymi migawkami, natomiast nie ma dostępu do ich zawartości.




[[zpo-6-wyk-Slajd26 | << Poprzedni slajd]] | [[zpo-6-wyk-toc|Spis treści ]] | [[zpo-6-wyk-Slajd28 | Następny slajd >>]]
[[zpo-6-wyk-Slajd26 | << Poprzedni slajd]] | [[zpo-6-wyk-toc|Spis treści ]] | [[zpo-6-wyk-Slajd28 | Następny slajd >>]]

Aktualna wersja na dzień 11:10, 17 paź 2006

Memento: uczestnicy

Memento: uczestnicy


Szczególną rolę we wzorcu odgrywają dwie klasy: Originator, który jest twórcą i właścicielem wszystkich migawek stanu, oraz Memento, której obiekty przechowują stan Originatora.

Obiekt Originator musi posiadać możliwość utworzenia obiektu Memento oraz odczytania jego zawartości w celu przywrócenia na tej podstawie poprzedniego stanu. Memento przechowuje stan obiektu Originator zapisany w dowolnym momencie; pozwala też na dostęp do niego obiektowi Originator, natomiast uniemożliwia operacje na migawce wszelkim innym obiektom. Przykładem jest obiekt Caretaker, który zarządza utworzonymi migawkami, natomiast nie ma dostępu do ich zawartości.


<< Poprzedni slajd | Spis treści | Następny slajd >>