Слайд 2Цели работы
Объекты исследования – способы проектирования распределенных и параллельных программ.
Цели работы –
разработка компилятора для языка логико-алгебраических выражений, позволяющего выполнить преобразование формального описания исходной модели в конкретный код на одном из языков программирования.
Слайд 3Проблемы существующих
средств разработки
Выполнение синхронизации на этапе написания кода приводит к ошибкам в
приложении
За счет узкой направленности большинство средств разработки подходят только для выполнения конкретных задач.
Отсутствуют инструменты предварительного проектирования модели программы.
Слайд 4Особенности нового подхода
Наличие формального описания концептуальной модели программы.
Возможность представления модели в графическом
виде (в виде графа).
Использование компилятора для автоматического преобразования модели в код программы.
Слайд 5Преимущества языка логико-алгебраических выражений
Наличие необходимых синтаксических конструкций для построения модели многомодульной системы.
Простота
представления модели в
графическом виде.
Грамматика языка является контекстно-свободной.
Слайд 6Пример описания
Оператор перехода
Слайд 7Виртуальное пространство памяти
Слайд 9Состав шаблона C#-проекта
Solution.sln – файл решения.
Project.csproj – файл проекта.
Startup.cs – точка входа
в программу.
State.cs – базовый класс для реализации состояний
CommonState.cs – шаблон состояний.
DataSpace.cs – реализация виртуального пространства.
Слайд 10Результаты работы
Проанализированы существующие решения в области проектирования распределенных и параллельных программ.
Разработан компилятор
логико-алгебраических выражений для использования в составе инструментальных систем разработки.
Разработан масштабируемый модуль генерации кода.