Wykład 6
Wprowadzenie do wzorców
projektowych
dr inż. Włodzimierz Dąbrowski
P
olsko
J
apońska
W
yższa
S
zkoła
T
echnik
K
omputerowych
Katedra Systemów Informacyjnych, pokój 310
e-mail:
Wlodek@pjwstk.edu.pl
Materiał wyłącznie do użytku przez studentów PJWSTK kursu BYT.
Copyright © 2002 – 2004 by W. Dąbrowski - wszelkie prawa zastrzeżone.
Materiał ani jego część nie może być w żadnej formie i za pomocą jakichkolwiek środków technicznych reprodukowany bez zgody właściciela praw autorskich.
Wersja PC
Budowa i integracja
systemów
informacyjnych
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 6, Slajd 2
listopad, 2004; PC
Plan wykładu
Co to jest wzorzec projektowy?
Po co stosować wzorce?
Do czego można stosować wzorce?
Przykłady prostych wzorców
projektowych
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 6, Slajd 3
listopad, 2004; PC
Paradygmat obiektowy
Czym jest obiekt??
Perspektywy
–
na poziomie koncepcji
zbiór odpowiedzialności
–
na poziomie specyfikacji
zbiór metod
–
na poziomie implementacji
kod + dane
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 6, Slajd 4
listopad, 2004; PC
O obiektach
Obiekt posiada wiedzę o
swojej przynależności
Obiekt znajduje się
konkretnym stanie
Obiekt posiada określoną
odpowiedzialność
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 6, Slajd 5
listopad, 2004; PC
Zalecenia projektowe
Obiekt musi
posiadać określony rodzaj
odpowiedzialności
być odpowiedzialny za
własne działania
odpowiedzialność musi być
jasno określona
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 6, Slajd 6
listopad, 2004; PC
Przypomnienie
Obiekt
Klasa, klasa abstrakcyjna
Interfejs
Hermetyzacja
Dziedziczenie
Polimorfizm
Szczególne metody
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 6, Slajd 7
listopad, 2004; PC
Wzorzec projektowy
Co można odnaleźć w
rozwiązaniu dobrym, czego
nie ma w złym?
Co można odnaleźć w
rozwiązaniu złym, czego nie
ma w dobrym?
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 6, Slajd 8
listopad, 2004; PC
Pierwsze wzorce
Za twórcę WP uważany jest
Christopher Alexander
Wzorce projektowe dotyczyły
rozwiązań architektonicznych
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 6, Slajd 9
listopad, 2004; PC
Pojęcie WP
sposób rozwiązania problemu w
określonym kontekście
„WP opisuje problem, który się
stale powtarza, określa
zasadniczą część jego
rozwiązania tak, aby można było
je zastosować wiele razy za
każdym razem w nieco inny
sposób …”
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 6, Slajd 10
listopad, 2004; PC
Elementy opisu wzorców
Nazwa
Intencja
Problem
Rozwiązanie
Uczestnicy
Konsekwencje
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 6, Slajd 11
listopad, 2004; PC
Wzorzec fasady
„Dostrajanie jednolitego
interfejsu do zbioru
interfejsów podsystemu…”
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 6, Slajd 12
listopad, 2004; PC
Fasada
Intencja: uproszczony sposób
korzystania z istniejącego
systemu
Problem: Potrzeba
wykorzystania części możliwości
istniejącego systemu
Rozwiązanie: Nowy interfejs do
istniejącego systemu
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 6, Slajd 13
listopad, 2004; PC
Fasada
Konsekwencje: Upraszcza
korzystanie z systemu
Implementacja:
–
nowa klasa o pożądanym
interfejsie
–
wykorzystanie istniejących
funkcji systemu
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 6, Slajd 14
listopad, 2004; PC
Adapter
„Dostosowanie interfejsu
klasy do interfejsu, którego
oczekuje użytkownik.
Umożliwia współpracę klas,
która bez jego zastosowania
nie byłaby możliwa ze
względu na ich niezgodne
interfejsy…”
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 6, Slajd 15
listopad, 2004; PC
Adapter
Intencja: dopasowanie
istniejącego obiektu do
określonego interfejsu
Problem: obiekt zachowuje
się tak jak trzeba, ale ma
nieodpowiedni interfejs
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 6, Slajd 16
listopad, 2004; PC
Adapter
Rozwiązanie: obudowanie
obiektu pożądanym interfejsem
Uczestnicy: Adapter,
Adaptowany, Cel, Użytkownik
Konsekwencje: dopasowanie
istniejących obiektów do
tworzonych struktur i uniknąć
ograniczeń
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 6, Slajd 17
listopad, 2004; PC
Podsumowanie
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 6, Slajd 18
listopad, 2004; PC
Problemy
• Porównać wzorzec fasady ze
wzorcem adaptera (jakie
mają wspólne cechy, a co je
różni?)
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 2, Slajd 18
marzec, 2004; PB
?
?
W.Dąbrowski, Budowa i integracja systemów informacyjnych, Wykład 6, Slajd 19
listopad, 2004; PC
Literatura
[1] Gamma E., Helm R., Johnson R.,
Vlissides J., Design Patterns:
Elements od Reusable Object-
Oriented Software, Addison-Wesley,
1995
[2] Shalloway A., Trott J.R.,
Projektowanie zorientowane
obiektowo. Wzorce projektowe,
Helion 2001; ISBN 83-7197-831-6