Такие вещи, как JS Statemachine принципиально отличаются от Statecharts. Они действительно суперсет FSM. Если вы делаете приложение, основанное на sproutcore, родные диаграммы состояний хороши (немного многословно, imho). Если вы используете другой фреймворк или используете свой собственный javascript, Stativus - действительно единственная полнофункциональная фреймворк диаграмм состояний. Stativus можно использовать в любой среде javascript: Backbone.js, ember.js, SproutCore, batman.js, ExtJS, Sencha и т. Д. ...
С FSM вы не получите:
- Параллельные состояния
- Вложенные подсостояния
- История Состояний
- Распространение событий диаграммы состояний
Это действительно похоже на попытку перетащить гонку на Yugo с Ferrari. Они оба могут занять ваши места и иметь четыре колеса, но у одного из них гораздо больше мощности, что это даже не соревнование.
Предупреждение: я помог написать оригинальную реализацию диаграммы состояний для SproutCore и написал Stativus ...