Главная » Просмотр файлов » Диссертация

Диссертация (1148239), страница 16

Файл №1148239 Диссертация (Платформа для создания специализированных визуальных сред разработки программного обеспечения) 16 страницаДиссертация (1148239) страница 162019-06-29СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 16)

Данные ошибки естественным образом проявятсялибо на фазе кодогенерации, либо уже во время работы целевого приложения, и чемраньше проектировщик узнает о некорректности создаваемой им модели, тем прощебудет исправить имеющиеся ошибки.В QReal был реализован механизм выполнения правил ограничений во времяработы с моделями. Проверка правил происходит при выполнении какого-либо изследующих событий:●изменение любого свойства элемента (логической или графической модели);●при помещении элемента в контейнер или извлечении элемента из контейнера;●при создании или удалении элементов;●при присоединении и отсоединении связей.У каждого правила задан уровень ошибки:●предупреждение — элемент, для которого не выполняется заданное правило,будет подсвечен на диаграмме красным цветом;●критичная ошибка — аналогично предупреждению, но при этом еще выдаетсятекстовое сообщение с текстом ошибки;●настраиваемый режим, при котором уровень критичности будет задаватьсяпользователем в настройках QReal.

Например, это может быть полезно врежиме отладки, когда на время хочется отключить текстовые сообщения обошибках.На рис. 19 и 20 показано несколько примеров выполнения правил ограничения95для языка программирования роботов (см. главу 6). Так, на рис. 19 не выполняетсяправило о том, что сразу после блока “Включить моторы” не должен идти блок“Выключить моторы” (на диаграмме эти блоки идут последовательно).

Элемент“Выключить моторы” подсвечен красным цветом.Рисунок 19. Нарушение правила ограниченияНа рис. 20 нарушено правило о том, что на диаграмме не может быть болееодного блока “Начало”. В данном случае элементом, для которого не выполненоограничение, является сама диаграмма, поэтому никаких блоков не подсвечивается.При нажатии на текст ошибки происходит выделение элемента, которому онасоответствует(диаграмма,накоторойрасполагаетсяэтотнеобходимости будет открыта).Рисунок 20. Нарушение правила ограниченияэлемент,при965.5.

ЗаключениеВ данной главе рассмотрена архитектура разработанной автором предметноориентированной платформы: описаны её принципы, основные типы подключаемыхмодулей (плагины редакторов, плагины инструментов) и их взаимодействие,способы расширения платформы. Описано назначение и правила использованияосновныхкомпонентплатформы,которыемогутбытьиспользованыдляформирования конечных предметно-ориентированных решений.

Как видно изданной главы, разработанное решение удовлетворяет требованиям к современнойDSM-платформе, сформулированным в разделе 2.5.97Глава 6. Апробация6.1. ВведениеОписанная в данной работе DSM-платформа была использована для созданияряда как отдельных визуальных языков и редакторов для них, так и полноценныхDSM-решений, включающих в себя интерпретаторы моделей, генераторы исходногокода и прочие инструменты.

В данной главе рассматриваются некоторые примерытаких решений.6.2. Среда разработки QReal:RobotsСреда QReal:Robots [49, 50] предназначена для программирования роботовLego Mindstorms NXT 2.0. В настоящее время робототехнические конструкторыактивно используются в школах, в частности в рамках уроков информатики икружков для обучения детей программированию и основам кибернетики. Одним изсамых популярных таких конструкторов в российских школах является LegoMindstormsNXT2.0.Программированиеэтихроботовстаршеклассникамипроисходит на языке Си, в младшей и средней школе используются более наглядныевизуальные средства программирования — NXT-G [16] для совсем простых задач иRobolab [20] для более сложных.

При этом у учителей, использующих эти средствана практике, накопился ряд замечаний к ним: отсутствие наглядных механизмовотладки создаваемых программ, неполная русификация, высокая стоимость, и др., атакже больше число замечаний к графическому интерфейсу сред и представлениюиспользуемых в них блоков. В результате было принято решение разработатьотечественную среду программирования робототехнических конструкторов LegoMindstorms NXT 2.0 на базе платформы QReal.Внешний вид QReal:Robots представлен на рис. 21 и характерен для98большинства создаваемых на базе QReal сред (как описано в разделе 5.4).Визуальный язык составляют 22 блока, разбитые на четыре логические группы:●алгоритмические блоки (например, блоки “Условие” или “Цикл”);●блоки инициализации программы (например, блоки “Начало” или “Сброситьпоказания количества оборотов моторов”);●блоки действий (например, блоки “Моторы вперед” или “Гудок”);●блоки ожиданий (например, блоки “Ждать срабатывания сенсора касания” или“Таймер”).Рисунок 91.

Внешний вид среды QReal:RobotsОтметим, что при возникновении требования разделения блоков в палитре налогические группы используемый для описания редакторов метаязык был расширен,и была добавлена поддержка этой функциональности на уровне DSM-платформы.Таким образом, появилась возможность задавать группы элементов в палитре нетолько в редакторе QReal:Robots, но и в других, созданных на базе платформы.99QReal:Robots расширяет стандартный графический интерфейс платформыQReal некоторыми дополнительными виджетами, характерными для предметнойобласти роботов: например, панелью настройки сенсоров, используемой дляконфигурирования сенсоров, подключаемых к роботу. При этом ряд виджетов, кмоменту создания QReal:Robots уже существовавших в рамках других сред,созданных на базе QReal, был обобщен и перенесен на уровень DSM-платформы, чтопозволило использовать их в других средах, в частности, в QReal:Robots. Например,таким виджетом оказалась панель отображения переменных, показывающаясостояние всех используемых в программе переменных и констант, как служебных(например, значения показателей количества оборотов моторов), так и созданныхпользователем.Существует несколько вариантов выполнения создаваемых в QReal:Robotsпрограмм.●Автоматическая генерация по диаграмме кода на языке Си, компиляция его вбинарный код и запись его в память робота (робот должен быть подключен поUSB или Bluetooth к компьютеру, на котором работает QReal:Robots).

В этомслучае программа будет выполняться на роботе автономно.●Пошаговаяинтерпретациядиаграммыспосылкойроботукоманд,соответствующих выполняемому блоку диаграммы. В этом случае робот такжедолжен быть подключен к компьютеру по USB или Bluetooth, однако, вотличие от предыдущего случая, робот должен оставаться подключенным навсе время выполнения программы.●Пошаговая интерпретация диаграммы с использованием двухмерной моделиробота в качестве исполнителя (см.

рис. 22). С помощью специального окнавозможноконфигурированиекаксамоймоделиробота(например,определение набора и расположения сенсоров), так и окружающего мира(создание препятствий, линий на полу и т.п.).100Функциональность, связанная с двухмерной моделью робота, была созданапрограммированием вручную в виде подключаемого к QReal:Robots модуля,поскольку является слишком специфичной для данной предметной области, чтобыбыть частью DSM-платформы.Рисунок 10. Окно двухмерной модели робота в QReal:RobotsПри старте проекта QReal:Robots в платформе QReal еще не было средствавтоматизированногосозданиявизуальныхинтерпретаторовигенераторовисходного кода по диаграммам, поэтому описанные выше интерпретаторы диаграмми генератор кода программы на Си были созданы кодированием вручную на C++/Qt.После появления средств задания операционной семантики языков генератор былописан и с помощью этого инструмента.1016.3.

Среда разработки, основанная на языке блок-схемБлок-схемы являются примером широко известного визуального языка общегоназначения с небольшим количеством элементов и конкретной семантикой этихэлементов. Это позволило использовать редактор блок-схем в качестве средстваапробации новых инструментальных средств, разработанных для платформы QReal.Например, изначально работа над созданием средств задания исполнимой семантикиповеденческих языков велась применимо именно к редактору блок-схем —изначально визуальный интерпретатор был создан для этого редактора вручную,затем велась работа по обобщению подобной функциональности на другие языки,основанные на задании потока управления.Внешний вид среды представлен на рис. 23. Используемый визуальный языкявляется подмножеством языка, определяемого ГОСТ 19.701-90, и состоит из пятитипов элементов (блоки “Начало”, “Конец”, “Действие”, “Условие” и “Диаграмма”)и двух связей (одна из которых используется для задания вариантов условныхпереходов, а другая — для связи остальных блоков).

В качестве текста,записываемого внутри блоков, используются конструкции языка Си.Помиморедакторадиаграммвсоставсредывходятследующиеинструментальные средства.●Визуальный интерпретатор диаграмм, позволяющий выполнять программупошагово блок за блоком, подсвечивая текущий. При этом происходит анализкода, содержащегося в блоках — объявленные переменные добавляются всписок текущих переменных (и отображаются в специальном окне QReal), привыполнении определённых действий над переменными их значения нужнымобразом изменяются. При интерпретации условных блоков происходитвычисление выражения, содержащегося в тексте блока, и осуществляетсяпереход по одной из веток алгоритма.

Характеристики

Список файлов диссертации

Платформа для создания специализированных визуальных сред разработки программного обеспечения
Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6372
Авторов
на СтудИзбе
309
Средний доход
с одного платного файла
Обучение Подробнее