Що таке програмування на основі автоматизації?

Програмування на основі автоматів - це парадигма комп'ютерного програмування, яка розглядає розділи програми як кінцеві автомати. Кожен автомат може приймати один "крок" за один раз, і виконання програми розбивається на окремі кроки. Кроки спілкування один з одним шляхом зміни значення змінної, що представляє "стан", і управління потоком програми визначається значенням цієї змінної.

Змінна "стан" може бути простим типом переліку даних, але можуть використовуватися більш складні структури даних. Загальною методикою є створення таблиці переходу стану, двовимірного масиву, що містить рядки, що представляють всі можливі стану, і стовпці, що представляють вхідний параметр. Значення таблиці, де зустрічаються рядок і стовпець, є наступним станом, до якого машина повинна перейти, якщо виконуються обидві умови.

Кінцевий автомат, вхідні дані, парадигма, терміни програмування