Zpo-11-wyk-Slajd10: 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:
==Command: cel==
==Przykład==


[[Image:zpo-11-wyk-Slajd10.PNG|Command: cel]]
[[Image:zpo-11-wyk-Slajd10.PNG|Przykład]]




Wzorzec Command pozwala hermetyzować polecenia do wykonania w postaci obiektów, aby można było traktować je w sposób abstrakcyjny i np. przekazywać jako parametry. W języku C istnieje możliwość przekazania wskaźnika na funkcję. W wysokopoziomowych językach obiektowych, które tej możliwości nie posiadają, ten sam efekt można osiągnąć poprzez przekazanie referencji lub wskaźnika do obiektu definiującego określoną metodę.
Przykładem w dalszym ciągu pozostaje klasa KartaCzytelnicza. Przyjmijmy na potrzeby tego przykładu, że zmiana stanu obiektu (czyli w tym przypadku typu karty JUNIOR, STANDARD i SENIOR) wpływa na zachowanie niektórych metod w tej klasie, przez co niemożliwe jest wykonanie przekształcenia pola ''typKlasy'' jedynie w klasę.
 
Takie rozwiązanie zapewnia hermetyzację poleceń, możliwość abstrahowania od ich przeznaczenia, a przy okazji umożliwia stosowanie np. poleceń odwracalnych (o ile obiekt reprezentujący polecenie zapamiętuje stan sprzed jego wykonania).




[[zpo-11-wyk-Slajd9 | << Poprzedni slajd]] | [[zpo-11-wyk-toc|Spis treści ]] | [[zpo-11-wyk-Slajd11 | Następny slajd >>]]
[[zpo-11-wyk-Slajd9 | << Poprzedni slajd]] | [[zpo-11-wyk-toc|Spis treści ]] | [[zpo-11-wyk-Slajd11 | Następny slajd >>]]

Aktualna wersja na dzień 17:36, 4 lis 2006

Przykład

Przykład


Przykładem w dalszym ciągu pozostaje klasa KartaCzytelnicza. Przyjmijmy na potrzeby tego przykładu, że zmiana stanu obiektu (czyli w tym przypadku typu karty JUNIOR, STANDARD i SENIOR) wpływa na zachowanie niektórych metod w tej klasie, przez co niemożliwe jest wykonanie przekształcenia pola typKlasy jedynie w klasę.


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