Pull to refresh

Comments 3

Не ведитесь, конечные автоматы отлично смотрятся на бумаге, но код конечного автомата, корме совсем простых случаев, очень быстро превращается в нечитабельное спагетти, где не понятно где, кто, куда и как связан. Если у вас сложная логика, конечный автомат ее не упростит. Имхо.

Как мне кажется упростит, если разработчик понимает, что же такое state machine. Не так давно пришлось делать парсер довольно сложной xml. Сначала была реализация в лоб, вот спагетти там было много. Проблема была в том, что есть куча типов узлов, которые могут иметь родителей разных типов. В итоге код стал абсолютно нечитабельным. Когда понадобилось добавить новый тип узла, так хотелось застрелиться. Переписал же на конечный автомат и вуаля, всё легко, всё понятно и легко расширяемо.
UFO just landed and posted this here
Sign up to leave a comment.