Принципы проектирования SOLID
- Обзор SOLID принципов
- SRP (Single Responsibility Principle)
- OCP (Open / Closed Principle)
- LSP (Liskov Substitution Principle)
- ISP (Interface Segregation Principle)
- DIP (Dependency Inversion Principle)
Строитель (Builder)
- Категоризация Гаммы
- Обзор
- Строитель
- Комбинирование строителей через интерфейс
- Строители через наследование
- Задача на паттерн Строитель
- Заключение
Фабрики (Factories)
- Обзор
- Фабричный метод
- Фабрика
- Абстрактная фабрика
- Задача на паттерн Фабрика
- Заключение
Прототип
- Обзор
- Прототип
- Фабрика прототипов
- Задача на паттерн Прототип
- Заключение
Одиночка (Singleton)
- Обзор
- Одиночка через аллокатор
- Одиночка через декоратор
- Одиночка через метакласс
- Monostate
- Одиночка и тестирование
- Задача на паттерн Одиночка
- Заключение
Адаптер (Adapter)
- Обзор
- Адаптер без кеширования
- Адаптер с кешированием
- Задача на паттерн Адаптер
- Заключение
Мост (Bridge)
- Обзор
- Мост
- Задача на паттерн Мост
- Заключение
Компоновщик (Composite)
- Обзор
- Геометрические фигуры
- Нейросети
- Задача на паттерн Компоновщик
- Заключение
Декоратор (Decorator)
- Обзор
- Декораторы функций в Python
- Классические декораторы
- Динамические декораторы
- Задача на паттерн Декоратор
- Заключение
Фасад (Facade)
- Обзор
- Фасад
- Задача на паттерн Фасад
- Заключение
Приспособленец (Flyweight)
- Обзор
- Пользовательские имена
- Форматирование текста
- Задача на паттерн Приспособленец
- Заключение
Прокси (Proxy)
- Обзор
- Защитный прокси
- Виртуальный прокси
- Прокси vs Декоратор
- Задача на паттерн Прокси
- Заключение
Цепочка ответственности (Chain of Responsibility)
- Обзор
- Цепочка методов
- Разделение команд и запросов
- Брокерская цепочка
- Задача на паттерн "Цепочка ответственности"
- Заключение
Команда (Command)
- Обзор
- Команда
- Компоновщик и команды
- Задача на паттерн Команда
- Заключение
Интерпретатор
- Обзор
- Лексический анализ
- Парсинг
- Задача на паттерн Интерпретатор
- Заключение
Итератор
- Обзор
- Итератор
- Свойства через список
- Задача на паттерн Итератор
- Заключение
Медиатор
- Обзор
- Чат
- Медиатор с событиями
- Задача на паттерн Медиатор
- Заключение
Снимок (Memento)
- Обзор
- Снимок
- Отмена и воспроизведение
- Задача на паттерн Снимок
- Заключение
Наблюдатель (Observer)
- Обзор
- События
- Property Observers
- Property Dependencies
- Задача на паттерн Наблюдатель
- Заключение
Состояние (State)
- Обзор
- Классическая реализация
- Машина состояний на словаре
- Машина состояний на switch
- Задача на паттерн Состояние
- Заключение
Стратегия (Strategy)
- Обзор
- Стратегия
- Задача на паттерн Стратегия
- Заключение
Шаблонный метод (Template Method)
- Обзор
- Шаблонный метод
- Задача на паттерн Шаблонный метод
- Заключение
Посетитель (Visitor)
- Обзор
- Интрузивный посетитель
- Рефлексивный посетитель
- Классический посетитель
- Улучшенный классический посетитель
- Задача на паттерн Посетитель
- Заключение