Назад к вопросам
Senior
3
Какие GoF-паттерны ты знаешь?
Компании, где спрашивали
EXPERA
Ответ от нейросети
sobes.tech AI
GoF (Gang of Four) паттерны — это классические шаблоны проектирования, описанные в книге "Design Patterns" четырьмя авторами. Основные группы и примеры паттернов:
-
Порождающие (Creational):
- Singleton — гарантирует единственный экземпляр класса.
- Factory Method — создает объекты через интерфейс, позволяя подклассам решать, какой класс инстанцировать.
- Abstract Factory — создает семейства связанных объектов.
- Builder — пошаговое создание сложного объекта.
- Prototype — создание объектов через клонирование.
-
Структурные (Structural):
- Adapter — преобразует интерфейс одного класса в другой.
- Composite — объединяет объекты в древовидную структуру.
- Decorator — динамически добавляет поведение объекту.
- Facade — упрощает интерфейс сложной подсистемы.
- Proxy — заместитель объекта, контролирующий к нему доступ.
- Bridge — разделяет абстракцию и реализацию.
- Flyweight — экономит память, разделяя общие данные.
-
Поведенческие (Behavioral):
- Observer — подписка на события и оповещение.
- Strategy — выбор алгоритма во время выполнения.
- Command — инкапсуляция запроса как объекта.
- Iterator — последовательный доступ к элементам коллекции.
- Mediator — централизует взаимодействие между объектами.
- State — изменение поведения объекта при смене состояния.
- Template Method — определяет скелет алгоритма.
- Visitor — отделяет алгоритмы от структур данных.
Это лишь основные паттерны, которые часто применяются в Java и других ООП-языках.