Структурні патерни проектування

Ці патерни відповідають за побудову зручних в підтримці ієрархій класів.

Adapter Адаптер Adapter Дає змогу об’єктам із несумісними інтерфейсами працювати разом. Bridge Міст Bridge Розділяє один або кілька класів на дві окремі ієрархії — абстракцію та реалізацію, дозволяючи змінювати код в одній гілці класів, незалежно від іншої. Composite Компонувальник Composite Дає змогу згрупувати декілька об'єктів у деревоподібну структуру, а потім працювати з нею так, ніби це одиничний об'єкт. Decorator Декоратор Decorator Дає змогу динамічно додавати об'єктам нову функціональність, загортаючи їх у корисні «обгортки». Facade Фасад Facade Надає простий інтерфейс до складної системи класів, бібліотеки або фреймворку. Flyweight Легковаговик Flyweight Дає змогу вмістити більшу кількість об'єктів у відведеній оперативній пам'яті. Легковаговик заощаджує пам'ять, розподіляючи спільний стан об'єктів між собою, замість зберігання однакових даних у кожному об'єкті. Proxy Замісник Proxy Дає змогу підставляти замість реальних об'єктів спеціальні об'єкти-замінники. Ці об'єкти перехоплюють виклики до оригінального об'єкта, дозволяючи зробити щось до чи після передачі виклику оригіналові.