Zpo-7-wyk-Slajd29: 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:
==Hide Delegate==
==Visitor: cel==


[[Image:zpo-7-wyk-Slajd29.PNG|Hide Delegate]]
[[Image:zpo-7-wyk-Slajd29.PNG|Visitor: cel]]




Celem tego przekształcenia jest poprawa hermetyzacji systemu poprzez ukrycie faktu delegowania żądań przez serwer. W układzie składającym się z trzech klas: klienta, serwera i delegata oznacza to, że klient kontaktuje się jedynie z serwerem, pozostając nieświadomym istnienia delegata, któremu serwer zleca obsługę żądania. Dzięki temu nie występuje powiązanie pomiędzy klientem a delegatem.  Pozwala to na elastyczną zmianę delegata w trakcie wykonywania programu.
Wzorzec Visitor jest rozszerzeniem idei stojącej za wzorcem Iterator na kolekcje heterogeniczne, składające się z elementów różnych typów. Jego celem jest dostęp do każdego elementu takiej struktury i wykonanie na nim operacji w sposób dla niego specyficzny.  
 
Przekształcenie polega na utworzeniu w klasie serwera prostych delegacji przekierowujących obsługę żądania klienta do delegata. Ponieważ przekształcenie to wiąże się z tworzeniem nowych metod, należy koniecznie upewnić się, że ich powstanie nie zaburza polimorficznego pokrywania w hierarchii dziedziczenia. W takim wypadku przekształcenie to nie może być skutecznie i poprawnie zastosowane.
 
Następnym krokiem jest modyfikacja klas klienckich, tak aby wywoływały żądania jedynie w klasie serwera, a nie bezpośrednio na delegacie. Po zakończeniu tego kroku można ukryć fakt istnienia klienta poprzez uczynienie prywatną referencji do niego w klasie serwera.  




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

Aktualna wersja na dzień 19:16, 4 lis 2006

Visitor: cel

Visitor: cel


Wzorzec Visitor jest rozszerzeniem idei stojącej za wzorcem Iterator na kolekcje heterogeniczne, składające się z elementów różnych typów. Jego celem jest dostęp do każdego elementu takiej struktury i wykonanie na nim operacji w sposób dla niego specyficzny.


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