DRAKON.SU

Текущее время: Четверг, 09 Декабрь, 2021 17:21

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
СообщениеДобавлено: Понедельник, 06 Сентябрь, 2021 11:09 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5329
Откуда: Москва
Язык ДРАКОН на конференции
"СПО в образовании"
OSEDUCONF-2021


СПО — Свободное программное обеспечение

https://bit.ly/3jRoWsu

Валерий Викторович Лаптев, доцент Астраханского гос. технического университета (АГТУ) сделал доклад на конференции в Переславле-Залесском.
Конференция называется:
Цитата:
"СПО в образовании" OSEDUCONF-2021

Доклад называется:
Цитата:
Drakon IDE — среда для обучения алгоритмизации

Тезисы доклада:
Цитата:
Описывается разработка среды Drakon IDE, предназначенная для обучения алгоритмизации на графическом языке ДРАКОН. Сформулированы требования к среде, определён минимальный набор икон и разработан интерпретатор дракон-схем типа «Примитив». Разработка осуществляется на языке Dart.

На кафедре АСОИУ Астраханского технического университета возникла потребность в реализации специализированной интегрированной среды для обучения начинающих программистов алгоритмизации.

В качестве визуального алгоритмического языка выбран язык ДРАКОН [1]. Этот язык был выбран по нескольким причинам. Во-первых, он близок к блок-схемам, с которыми знакомы почти все студенты, поступившие на ИТ-направления. Во-вторых, Дракон-схемы, в отличие от блок-схем, строятся по строгим правилам. В-третьих, ДРАКОН является российской разработкой.

Требования к интегрированной среде

Первоначально были сформулированы требования к интегрированной среде. Среда должна обеспечивать пользователю следующие минимальные возможности:

работа с проектами;
работа со схемами;
накопление компонентов схем в библиотеке;
выполнение схемы;
конвертирование схемы в программу на языке программирования.

Проект может содержать одну или несколько схем. Типичные действия с проектами: создать проект, добавить/удалить схему, сохранить проект, открыть/закрыть проект.

Работа со схемами — это типичные операции создания, редактирования и сохранения схемы. Очевидно, что эти операции должен обеспечивать специализированный графический редактор.

Среда должна обеспечивать накопление библиотеки стандартных алгоритмов и элементов алгоритмов.

Для проверки схемы требуется выполнение сконструированного алгоритма. Выполнение возможно в различных режимах: непрерывное, непрерывное с задержкой, пошаговое.

Конвертирование схемы в программу на языке программирования способствует лучшему пониманию алгоритмов и программ. Кроме того, это позволит получать исполняемый файл для Дракон-схемы.

Интегрированная среда также должна иметь современный, наглядный и информативный пользовательский интерфейс.

Как выяснилось в результате детального анализа, в настоящее время ни одна из существующих систем не обеспечивает выполнение Дракон-схем.

Описание модели схемы

Для работы со схемами разработана модель. Каждой иконе в схеме соответствует объект-икона в модели, которая содержит полную информацию, необходимая для изображения, интерпретации и конвертации иконы. Все иконы, кроме иконы «Вопрос», имеют один вход и один выход. Икона «Вопрос» имеет один вход и два выхода.

Дракон-схемы бывают двух видов: схемы типа «примитив» и схемы типа «силуэт». Модель примитива представляет собой последовательность объектов-икон. Схема типа «силуэт» имеет ветки, которые делят схему на смысловые части. Модель ветки — это последовательность объектов-икон, а весь силуэт представляет собой последовательность веток (последовательность последовательностей икон).

Разработка интерпретатора Дракон-схем

Разработка среды началась с разработки первой версии интерпретатора. Был определён минимальный набор икон для интерпретации схем типа «Примитив»:

икона «Заголовок»;
икона «Действие»;
икона «Вопрос»;
икона «Полка»;
икона «Конец».

Для каждой иконы было определены допустимые операции в иконах.

Икона «Заголовок» обозначает начало алгоритма и является хранилищем переменных Дракон-схемы. Количество переменных может быть произвольным. Переменные могут иметь целочисленный, вещественный и логический типы. Вещественные и логические переменные задаются с типом, целые — без типа. Переменным присваивается начальное значение.

Иконы «Действие», «Вопрос» и «Полка» могут содержать только по одному выражению.

Икона «Действие» содержит выражение присваивания переменным Дракон-схемы некоторого значения. Преобразования типов не выполняется.

Икона «Вопрос» служит для сравнения значений двух переменных. Результатом операции сравнения является значение логического типа: истина (true, да, верно) или ложь (false, нет, неверно).

Икона «Полка» содержит выражение с арифметической операцией с двумя переменными. Результат вычисления операции присваивается переменной. Преобразования типов не выполняется.

Для отладки первой версии интерпретатора было разработано текстовое представление икон и схемы типа «Примитив». На рисунке 1 показана дракон-схема и её текстовое представление.

Дракон-схема и её текстовое представление

Текущее состояние проекта

Первоначальная версия интерпретатора разрабатывалась на языке С++ с использованием библиотеки Qt. Однако в результате более глубокого анализа функционала разрабатываемой среды было принято решение переписать интерпретатор на языке программирования Dart с использованием Flutter SDK. В настоящее время первая версия интерпретатора полностью реализована.

На этом же инструментарии в настоящее время выполняется разработка специализированного графического редактора (см. рис. 1), а также конвертера в учебный язык программирования Slang. Рассматривается разработка конвертеров в промышленные языки программирования, в частности, в С++ и Оберон.

После завершения разработки первой версии среды исходный код будет размещён на github.

https://bit.ly/3jRoWsu


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2008-2021, участники конференции «DRAKON.SU», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB