Zpo-6-wyk-Slajd8: 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==
==Abstract Factory: uczestnicy==


[[Image:zpo-6-wyk-Slajd8.PNG|Przykład]]
[[Image:zpo-6-wyk-Slajd8.PNG|Abstract Factory: uczestnicy]]




Jako przykład posłuży ''metodaA'' ''(),'' posiadająca pierwotnie dwa parametry. W trakcie przekształcenia tworzona jest wersja metody z dodatkowym parametrem ''parametr0'' , do której delegowane wywołania ze oryginalnej metody. W miejsce dodatkowego parametru przekazywana jest wartość ''null'' .
Interfejs AbstractFactory definiuje osobne metody typu ''factoryMethod'' ''()'' dla każdego typu produktu, jaki ma tworzyć. Produkty nie są w żaden sposób ze sobą związane. Dopiero obiekt ConcreteFactory, będący implementacją klasy AbstractFactory, określa, jakie konkretne klasy zostaną użyte do konstrukcji produktów.
 
Klasy produktów również widziane jako interfejsy AbstractProduct. Dzięki temu zmiana rodziny produktów jest przezroczysta z punktu widzenia klienta.




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

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

Abstract Factory: uczestnicy

Abstract Factory: uczestnicy


Interfejs AbstractFactory definiuje osobne metody typu factoryMethod () dla każdego typu produktu, jaki ma tworzyć. Produkty nie są w żaden sposób ze sobą związane. Dopiero obiekt ConcreteFactory, będący implementacją klasy AbstractFactory, określa, jakie konkretne klasy zostaną użyte do konstrukcji produktów.

Klasy produktów również są widziane jako interfejsy AbstractProduct. Dzięki temu zmiana rodziny produktów jest przezroczysta z punktu widzenia klienta.


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