Я работаю над исследованием одного клиентского приложения средней сложности. На данный момент он написан на чистом javascript, в нем много различных событийно-ориентированных сообщений, соединяющих несколько основных частей этого приложения.
Мы решили, что нам нужно реализовать какой-то контейнер состояний для этого приложения в рамках дальнейшего рефакторинга. Раньше у меня был некоторый опыт работы с redux и ngrx store (которые фактически следуют тем же принципам).
Redux - это вариант для нас, но один из разработчиков предложил использовать библиотеку на основе конечного автомата, в частности конечного библиотеку xstate .
Я никогда не работал с xstate, поэтому мне это показалось интересным, и я начал читать документацию и рассматривать разные примеры. Выглядело многообещающе и мощно, но в какой-то момент я понял, что не вижу существенной разницы между ним и redux.
Я часами пытался найти ответ или любую другую информацию, сравнивая xstate и redux. Я не нашел какой - либо четкой информации, за исключением некоторых статей , как «получить от Redux к государственной машине» , или ссылки на библиотеки сосредоточены на использовании Redux и xstate вместе (довольно странно).
Если кто-то может описать разницу или сказать мне, когда разработчикам следует выбрать xstate - добро пожаловать.