Текст из статьи
Есть события, которые описывают конкретное состояние. Затем при наступлении условий перехода, система переходит из одного состояния в другое.
Самое важное в этом примере — обработчики действий, где мы пишем большую часть логики, так как здесь описывается реакция системы на входные данные и на изменённые состояния.
Я чётко вижу преимущества наличия в проекте строго определённых состояний и переходов между ними. Мне, в ходе работы, всегда хочется сделать мои конфигурации как можно более простыми, а их код — как можно более понятным. Я уверен, что машины состояний — это шаг в правильном направлении. Её практическое использование вполне способно устранить множество ошибок, характерных для других подходов к разработке.