Конечные автоматы
В программировании часто встречается такая вещь как конечные автоматы. По сути это такой блок в котором хранится какое то состояние и он может на основе входных данных и своего состояния решать что нужно делать дальше и менять свое состояние на новое. Это используется например в играх для создания ИИ. Конечный автомат это автомат у которого может быть конкретное, не бесконечное количество состояний. К примеру возьмем такой ИИ врага в игре. У него есть три состояния: патрулирует территорию высматривая главного героя, увидев его он идет включать тревогу и после этого начинает атаковать...
Как спроектировать правильный конечный автомат на REST
Разработчики часто неверно понимают концепцию передачи состояния представления (REST). Большинство ошибок связаны с трактовкой архитектурного ограничения HATEOAS. В этой статье мы разберем популярные заблуждения, связанные с REST, и подробно остановимся на HATEOAS. В конце текста на примере имитации конечного автомата — кухонного тостера — рассмотрим, как гипермедиа может использоваться в REST API для управления состояниями. Примечание: Это адаптированный перевод статьи Designing a True REST State Machine Билла Доррфельда, технического журналиста и специалиста по API...