Sobes.tech
Назад к вопросам
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 и других ООП-языках.