Текстовый язык автоматного программирования В. С. Гуров,М. А. Мазин,А. А. Шалыто
Инструментальное средство UniMod
Диаграмма классов
Диаграмма состояний
Графический язык программирования Достоинства средства UniModДиаграммы более выразительны, чем текстUML-нотация — общепринятаНедостатки средства UniModВводить диаграммы неудобноПрограммисты предпочитают текстовый код
Текстовый язык автоматного программирования Проблемно-ориентированный автоматный языкАвтомат описывается в терминах автоматного программированияДиаграммы генерируются по мере ввода текста программы
Разработка текстового языка программирования ТрансляторЛексический анализаторСинтаксический анализаторСемантический анализаторГенератор кодаИнтегрированная среда разработки«Подсветка» ошибокАвтоматическое завершение вводаНавигация по коду
Система метапрограммирования MPS Принимает на входабстрактный синтаксисконкретный синтаксиссистему типовкодогенераторАвтоматически строит интегрированную среду разработки
Виды проблемно-ориентированных языков Проблемно-ориентированные расширения существующих языковНапример, язык доступа к базе данных,язык описания регулярных выражений и т.д.Независимые языкиНапример,язык планировщика задач операционной системы
Автоматное расширение языка Java Позволяет описывать поведение Java-класс в виде автоматаОтправка событий — вызов специальных методов классаСостояние храниться в переменной объектаАвтомат описывается в терминах автоманого программирования
Независимый автоматный язык Все приложение описывается в терминах автоманого программированияВозможно использовать для генерации не Java-кодаСоответствует понятию запускаемых спецификаций
Генерация диаграмм
Результаты Разработанное средство позволяетразрабатывать автоматные программыописывать поведение Java-классов в виде автоматовиспользовать преимущества текстового ввода программ и представления автоматов в виде диаграмм
Спасибо