🎉 Ура! Після трьох років роботи, я нарешті випустив англійську версію книжки про патерни! Ось вона »

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

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

Адаптер Адаптер Adapter

Дає змогу об’єктам із несумісними інтерфейсами працювати разом.

Міст Міст Bridge

Розділяє один або кілька класів на дві окремі ієрархії — абстракцію та реалізацію, дозволяючи змінювати код в одній гілці класів, незалежно від іншої.

Компонувальник Компонувальник Composite

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

Декоратор Декоратор Decorator

Дає змогу динамічно додавати об'єктам нову функціональність, загортаючи їх у корисні «обгортки».

Фасад Фасад Facade

Надає простий інтерфейс до складної системи класів, бібліотеки або фреймворку.

Легковаговик Легковаговик Flyweight

Дає змогу вмістити більшу кількість об'єктів у відведеній оперативній пам'яті. Легковаговик заощаджує пам'ять, розподіляючи спільний стан об'єктів між собою, замість зберігання однакових даних у кожному об'єкті.

Замісник Замісник Proxy

Дає змогу підставляти замість реальних об'єктів спеціальні об'єкти-замінники. Ці об'єкти перехоплюють виклики до оригінального об'єкта, дозволяючи зробити щось до чи після передачі виклику оригіналові.