Статья опубликована в журнале "Компьютерные инструменты в образовании". 2004. № 4, с. 75-84.
© 2004 г.А. В. Беляев, Д. И. Суясов, А. А. Шалыто
Отсюда можно скачать текст статьи в формате pdf (~243 кб)
Аннотация
В настоящей работе описывается использование автоматного подхода на примере создания простой компьютерной игры. Логика управления игры "Космонавт" реализована в виде конечного автомата. Красивое графическое оформление игры позволяет визуально отразить текущее состояние автомата. Поэтому сама программа и ее документация могут служить наглядным примером применения автоматного подхода.
Программа иллюстрирует предложенное в работе разделение состояний в программе на два типа: управляющие и вычислительные. При этом, находясь в одном из управляющих состояний, система может проходить большое число вычислительных состояний. Например, находясь в состоянии "Полет", вычисляется функция, описывающая физику полета, которая в ходе вычисления принимает большое число состояний.
Предложенный подход делает понятие "состояние" конструктивным, так как обычно состояния на указанные типы не разделяются, а под состояниями понимаются значения ячеек памяти, число которых огромно.
Предложенное решение весьма близко к подходу, развиваемому при построении гибридных динамических систем.
В работе обоснован выбор основных вычислительных алгоритмов, использованных в игре.
Программа написана на языке Java. Этот язык прост в использовании и изучении. Он полностью объектно-ориентированный и платформенно-независим.
|