Вопрос Нужно ли программисту знать конечные автоматы?

Регистрация
14 Дек 2013
Сообщения
79
Репутация
14
Спасибо
0
Монет
0
Нужно ли программисту знать конечные автоматы?
 
Конечные автоматы - это учебная абстракция программирования. Только если потренировать своё мышление и абстрагирование. Один раз понять, сдать преподу, и забыть. Практической пользы - никакой. В реальном программировании всегда стоит более предметная, конкретная задача, а не просто кусочек абстракции части алгоритма или фрагмента действий (нескольких операторов), как в задачках по конечным автоматам.
 
А ты думаешь, реальный айтишник будет вам "образовательные услуги" оказывать?)) Ты не путай оказание услуг и семейные отношения. Нашли кандидата наук, он что могёт - то и читает.
 
Стоит иметь представление о них, чтобы уметь их программировать. Например, простейшие текстовые квесты устроены по принципу конечного автомата: в каждый момент времени герой находится на некотором этапе игры, из которого он может переместиться в несколько других этапов, приняв то или иное решение. Развитие игрового процесса зависит от выбора игрока. По этому же принципу работают некоторые системы обслуживания. Например, вендинговая машина. Сначала она ждет денежку, потом предлагает выбрать напиток, потом наливает его в стаканчик и выдает, потом высыпает сдачу. Или не дает напитка, а по запросу просто высыпает вложенную сумму мелочью. Всё это переходы между состояниями конечного автомата.
 
Назад
Сверху