Шаблон проектирования Шаблонный Метод (Template Method)

Шаблонный метод (Template Method) — это шаблон проектирования, который позволяет определить скелет алгоритма в базовом классе и дать возможность подклассам изменять некоторые шаги алгоритма, не меняя его общей структуры.

Читать далее...

Шаблон проектирования Стратегия (Strategy)

Шаблон проектирования Стратегия (Strategy) — это паттерн, который позволяет определять семейство алгоритмов, инкапсулировать каждый из них и делать их взаимозаменяемыми. То есть данный паттерн позволяет выбирать один из алгоритмов в зависимости от конкретной ситуации.

Читать далее...

Шаблон проектирования Спецификация (Specification)

Шаблон проектирования Спецификация (Specification) используется для определения, соответствует ли объект определенным критериям. Он представляет собой объект, который содержит логику, позволяющую проверять, удовлетворяет ли другой объект определенным требованиям или нет.

Читать далее...

Шаблон проектирования Наблюдатель (Observer)

Шаблон проектирования Наблюдатель (Observer) используется, когда необходимо реализовать механизм, позволяющий объектам автоматически получать уведомления об изменениях состояния других объектов.

Читать далее...

Шаблон проектирования «Объект Null» (Null Object)

Шаблон проектирования «Объект null» (Null Object) — это способ заменить отсутствующий объект другим объектом, который не делает ничего, но ведет себя так же, как и ожидаемый объект. Это позволяет избежать проверок на null в коде и упрощает обработку ошибок, связанных с отсутствием объекта.

Читать далее...

Шаблон проектирования Хранитель (Memento)

Шаблон проектирования Хранитель (Memento) используется для сохранения и восстановления состояния объекта внешними объектами, не раскрывая деталей его реализации. Он состоит из трех основных частей: хранителя, оригинала и снимка.

Читать далее...

Шаблон проектирования Итератор (Iterator)

Шаблон проектирования Итератор (Iterator) используется для последовательного доступа к элементам коллекции без раскрытия деталей ее реализации. Он позволяет перебирать элементы коллекции без знания о ее внутренней структуре и способе обхода.

Читать далее...