Co to jest programowanie oparte na automatach?

Programowanie oparte na automatach jest paradygmatem programowania komputerowego, który traktuje sekcje programu jako automaty skończone. Każdy automat może wykonać jeden „krok” na raz, a wykonanie programu jest podzielone na poszczególne kroki. Kroki komunikują się ze sobą, zmieniając wartość zmiennej reprezentującej „stan”, a przepływ sterowania programu jest określony przez wartość tej zmiennej.

Zmienna „state” może być prostym typem danych enum, ale można stosować bardziej złożone struktury danych. Powszechną techniką jest tworzenie tabeli przejścia stanu, dwuwymiarowej tablicy zawierającej wiersze reprezentujące każdy możliwy stan, a kolumny reprezentujące parametr wejściowy. Wartość tabeli, w której spotykają się wiersze i kolumny, jest następnym stanem, do którego maszyna powinna przejść, jeśli spełnione są oba warunki.

Maszyna stanu skończonego, wejście, paradygmat, warunki programowania