Мне нужно что-то делать для работы, и мне нужна ваша помощь.
Мы хотим реализовать FSM - Finite State Machine
, чтобы идентифицировать последовательность char (например: A, B, C, A, C) и сказать, принята ли она.
Мы думаем реализовать три класса: State
, Event
и Machine
.
Класс State
представляет node в FSM
, мы решили реализовать его с помощью State design pattern
, каждый node будет расширяться из абстрактного состояния класса, и каждый класс будет обрабатывать различные типы событий и указывать переходы на новое государство. На ваш взгляд, это хорошая идея?
Во-вторых, мы не знаем, как сохранить все переходы. Снова мы решили реализовать его с каким-то map
, которые содержат начальную точку и получают какой-то вектор со следующими состояниями, но я не уверен, что это хорошая идея.
Я был бы рад получить некоторые идеи о том, как его реализовать, или, может быть, вы можете дать мне несколько отправных точек.
Как мне сохранить FSM, то есть как мне построить дерево в начале программы? Я искал его и нашел множество примеров, но ничего не помогло мне.
Большое спасибо.