Wzorce strukturalne
Wzorce strukturalne wyjaśniają w jaki sposób można składać obiekty i klasy w większe struktury zachowując przy tym elastyczność i efektywność tych struktur.
Adapter
Adapter
Pozwala na współdziałanie obiektów o niekompatybilnych interfejsach.
Most
Bridge
Pozwala podzielić dużą klasę lub blisko spokrewnione ze sobą klasy na dwie hierarchie: abstrakcję oraz implementację, nad którymi można pracować niezależnie od siebie.
Kompozyt
Composite
Pozwala komponować obiekty w struktury drzewiaste, a potem traktować je tak, jakby były one osobnymi obiektami.
Dekorator
Decorator
Pozwala nadać dodatkowe obowiązki obiektom poprzez umieszczenie tych obiektów w specjalnych obiektach opakowujących, które zawierają odpowiednie zachowania.
Fasada
Facade
Wyposaża bibliotekę, framework lub inny złożony zestaw klas w uproszczony interfejs.
Pyłek
Flyweight
Pozwala zmieścić większą liczbę obiektów w dostępnej pamięci RAM poprzez współdzielenie elementów opisujących stan obiektu. Część opisu stanu jest wspólna dla wielu obiektów, więc nie muszą one zawierać kopii wszystkich danych.
Pełnomocnik
Proxy
Pozwala tworzyć zastępcę dla innego obiektu. Pełnomocnik nadzoruje dostęp do pierwotnego obiektu, pozwalając na wykonanie jakiejś czynności przed lub po przekazaniu do niego żądania.