Pakiet programów do zdalnego nauczania Programowania Orientowanego Obiektowo
Dzisiaj jest
Poniedziałek, 16 Lipiec 2018
Zarejestrowanych użytkowników: 4
Dostępnych pytań testowych: 102
HOME
Strona tytułowa pracy dyplomowej
NAUKA
Materiały dydaktyczne związane z OOP
TESTY
Sprawdzenie poziomu zdobytej wiedzy
ZASOBY
Literatura i zasoby sieciowe o OOP
ŹRÓDŁA
Zbiór projektów dydaktycznych z OOP
KONTO
Możliwość śledzenia własnych postępów
INFO



Wzorce strukturalne

Wzorce strukturalne są grupą wzorców umożliwiających rozwiązywanie pewnych problemów za pomocą specyficznego łączenia obiektów klas wykorzystując dziedziczenie, zawieranie lub oba mechanizmy naraz.

Do najczęściej wykorzystywanych wzorców strukturalnych można zaliczyć wzorce:

Wzorzec projektowy Adapter umożliwia dopasowanie interfejsu istniejącej klasy do innego, wymaganego przez aplikację interfejsu. Wykorzystuje się go szczególnie w sytuacjach, gdzie istniejące wymagania systemu zostały już zaimplementowane (np. w innym projekcie, bibliotece) natomiast ich interfejs różni się od wymaganego.

Wzorzec Most pozwala na oddzielenie interfejsu od implementacji, dzięki czemu obydwie części mogą być niezależnie modyfikowane. Wykorzystywany jest zwykle w ogólnych bibliotekach przeznaczonych na wiele platform, ponieważ pozwala na ukrycie szczegółów implementacyjnych związanych z konkretnymi implementacjami na danej platformie. Dodatkowo, jego zubożona wersja (nazywana często idiomem pimpl), pozwala na zwiększenie szybkości czasu ponownej kompilacji plików źródłowych w języku C++.

Budowanie skomplikowanych obiektów za pomocą elementów (mniejszych obiektów), które łączą się ze sobą tworząc strukturę drzewa umożliwia wzorzec projektowy Kompozyt. Znajduje on zastosowanie w każdej sytuacji w której zachodzi potrzeba modelowania obiektów tworzących hierarchię.

Wzorzec projektowy Dekorator umożliwia dynamiczne dodawanie nowych funkcjonalności do obiektów, stanowiąc dobrą alternatywę dla statycznego mechanizmu dziedziczenia.

Adamik Łukasz, Politechnika Śląska w Gliwicach (AEiI) - 2010/11