Projektowanie oprogramowania

Transkrypt

Projektowanie oprogramowania
Projektowanie oprogramowania
Wykład 04
Inżynieria Oprogramowania
Kazimierz Michalik
Wzorce projektowe
Katalog wzorców projektowych
●
Erich Gamma, Richard Helm, Ralph Johnson, John
Vlissides: Inżynieria oprogramowania: Wzorce
projektowe (Wyd. II). Warszawa: WNT, 2008. ISBN
978-83-204-3472-9.
Wzorce projektowe
●
●
●
●
nazwa wzorca
problem – opisuje sposoby rozpoznawania sytuacji, w których
możemy zastosować dany wzorzec oraz warunki jakie muszą
zostać spełnione, by jego zastosowanie miało sens;
rozwiązanie – opisuje elementy rozwiązania: ich relacje,
powiązania oraz obowiązki, zawiera także wskazówki
implementacyjne dla różnych technologii;
konsekwencje – zestawienie wad i zalet stosowania wzorca,
uwzględniające informacje o jego brakach oraz kosztach
rozwoju i utrzymania systemu wykorzystującego dany
wzorzec.
Wzorce projektowe
●
Wzorce kreacyjne
●
Wzorce strukturalne
●
Wzorce czynnościowe
●
Wzorce współbieżności
Wzorce projektowe
Wzorce kreacyjne
●
Budowniczy
●
Fabryka abstrakcyjna
●
Metoda wytwórcza (klasowy)
●
Prototyp
●
Singleton
Budowniczy
Metoda wytwórcza
Fabryka abstrakcyjna
Fasada
Singleton
Wzorce projektowe
Wzorce strukturalne
●
Adapter (klasowy także)
●
Dekorator
●
Fasada
●
Kompozyt
●
Most
●
Pełnomocnik
●
Pyłek
Adapter (klasowy)
Adapter
Pyłek
Model-View-Controller (pol.
Model-Widok-Kontroler)
Wzorce projektowe
Wzorce czynnościowe
●
Interpreter (klasowy)
●
Iterator
●
Łańcuch zobowiązań
●
Mediator
●
Metoda szablonowa
●
Obserwator
●
Odwiedzający
●
Pamiętka
●
Polecenie
●
Stan
●
Strategia
●
RAII
Strategia
Obserwator
Metoda szablonowa
Odwiedzający
Łańcuch zobowiązań
Polecenie
Stan
Pamiątka
Wzorce projektowe
Wzorce współbieżności
●
Aktywny obiekt,
●
Asynchroniczne sterowanie przez zdarzenia,
●
Udaremnianie,
●
Blokada z podwójnym zatwierdzaniem,
●
Ochraniane wstrzymywanie,
●
Obiekt monitorujący,
●
Blokada zapisu i odczytu,
●
Zarządca procesów,
●
Pula wątków,
●
Pamięć dla wątków,
●
Reaktor