Состояние
🔒 Sign in to use this
Состояние — поведенческий паттерн, позволяющий объекту менять своё поведение при изменении его внутреннего состояния. Внешне кажется, что объект меняет свой класс. Вместо разрастающихся блоков if/switch, проверяющих переменную состояния и ветвящих поведение, каждое состояние инкапсулируется в отдельный класс. Контекст делегирует поведение текущему объекту-состоянию, заменяя его при переходе. Представьте светофор: одно и то же действие «переключить» даёт совершенно разный результат в зависимости от того, горит ли сейчас красный, зелёный или жёлтый.
ℹ️Ключевая идея: заменить условные операторы, зависящие от состояния, семейством объектов-Состояний. Контекст хранит ссылку на текущее Состояние и делегирует ему всё зависящее от состояния поведение. Переходы осуществляются заменой объекта-состояния.
Content is available with subscription.
Get full access to all courses on the platform for one year with a single payment.
▼
▼
Unlike other platforms that charge per course, here you get everything for one price, and after one year of use there will be no automatic charge for the following year.
🔒 Sign in to use this