Статья опубликована в рамках: Научного журнала «Студенческий» № 18(230)
Рубрика журнала: Информационные технологии
Скачать книгу(-и): скачать журнал часть 1, скачать журнал часть 2, скачать журнал часть 3, скачать журнал часть 4, скачать журнал часть 5, скачать журнал часть 6, скачать журнал часть 7, скачать журнал часть 8, скачать журнал часть 9, скачать журнал часть 10
ОСОБЕННОСТИ РАЗРАБОТКИ ИНСТРУМЕНТОВ ВИЗУАЛЬНОГО ПРОГРАММИРОВАНИЯ
FEATURES OF THE DEVELOPMENT OF VISUAL PROGRAMMING TOOLS
Ilya Fedorov
Masters’s student, Department of automated control systems, Ufa University of Science and Technology,
Russia, Ufa
Vyacheslav Antonov
Scientific supervisor, Doctor of Technical Sciences, Department of automated control systems, Ufa University of Science and Technology,
Russia, Ufa
АННОТАЦИЯ
В данной статье рассматриваются основные принципы разработки инструментов визуального программирования. А также описываются проблемы, с которыми придется столкнуться при создании собственного решения.
ABSTRACT
This article discusses the basic principles of developing visual programming tools. It also describes the problems that you will have to face when creating your own solution.
Ключевые слова: визуальное программирование, программирование, разработка, генерация кода, автоматизация.
Keywords: visual programming, programming, development, code generation, automation.
Введение
Визуальное программирование – это метод создания программного кода с использованием графических элементов вместо текстовых инструкций. Визуальное программирование позволяет создавать приложения и решать задачи без необходимости знать язык программирования.
История развития визуального программирования началась в 1960-х годах, когда были созданы первые языки программирования с графическим интерфейсом. В 1970-х годах были разработаны языки программирования, основанные на блоках, которые можно было перемещать и соединять между собой для создания программного кода.
В 1980-х годах были созданы первые среды визуального программирования, такие как Delphi и Visual Basic. В 1990-х годах были разработаны новые языки программирования, такие как Scratch и Blockly, которые предназначены для обучения детей основам программирования.
В настоящее время инструменты визуального программирования закрепились в решениях задач прототипирования интерфейсов разрабатываемых программных продуктов, обучении программированию и работы с языком запросов баз данных (SQL). Это является примерами формализации шаблонных программных конструкций применяемых при решении этих типовых задач. Для решения узкоспециализированных задач приходится проводить анализ существующих реализаций программных модулей и выделять наиболее частые паттерны разработки.
Преимущества визуального заключаются в сокращении промежуточных этапов разработки и настройки системы. То есть заказчик работ становится ближе к исполнителю, либо вовсе может сам реализовать все, что раньше требовало привлечения разработчика. Другими словами. преимущества визуального программирования заключаются в том, что оно упрощает процесс создания приложений и решения задач, позволяет быстрее разрабатывать код и уменьшает количество ошибок. Кроме того, визуальное программирование позволяет легче визуализировать данные и результаты работы программы.
Что же касается недостатков, заключаются они в том, что оно скорее всего будет менее гибким, чем текстовое программирование, и может ограничивать возможности программиста. Кроме того, визуальное программирование может быть менее эффективным в использовании ресурсов компьютера и требовать.
В целом, визуальное программирование является полезным инструментом для создания приложений и решения задач, особенно для новичков в программировании. Однако, для более сложных проектов, может потребоваться текстовое программирование для достижения максимальной гибкости и эффективности [1].
Примеры инструментов визуального программирования. Scratch – это бесплатный инструмент для визуального программирования, который был разработан Массачусетским технологическим институтом (MIT) для обучения детей основам программирования. Scratch использует блоки, которые можно перемещать и комбинировать, чтобы создавать анимации, игры и другие интерактивные приложения.
Blockly – это еще один бесплатный инструмент для визуального программирования, который был разработан Google. Blockly*(По требованию Роскомнадзора информируем, что иностранное лицо, владеющее информационными ресурсами Google является нарушителем законодательства Российской Федерации – прим. ред.) использует блоки, которые можно перетаскивать и соединять, чтобы создавать программы для различных платформ и устройств.
App Inventor – это бесплатный инструмент для визуального программирования, который был разработан MIT для создания мобильных приложений для операционной системы Android. App Inventor использует блоки, которые можно перетаскивать и соединять, чтобы создавать приложения с различными функциями, такими как GPS-навигация, мультимедиа и социальные сети.
LabVIEW – это платный инструмент для визуального программирования, который был разработан National Instruments для создания приложений в области автоматизации и измерений. LabVIEW использует графические элементы, такие как блок-схемы и графики, чтобы создавать приложения для управления и мониторинга процессов.
Unreal Engine Blueprint – это платформа для создания игр и визуализации 3D-моделей, которая также использует визуальное программирование. Unity использует блоки, которые можно перетаскивать и соединять, чтобы создавать игровые объекты, управлять анимацией и создавать эффекты.
Основные принципы визуального программирования. Визуальное программирование берет за основу различные графические нотации, которые проектируются и реализуются под нужды конкретного инструмента. Таким образом пользователь этого инструмента может реализовывать новые функциональные возможности или настраивать существующие с помощью визуальных блоков. Графическая нотация упрощает процесс создания программ, так как она позволяет программистам видеть визуально, как работает программа и какие требования в нее были заложены стороной бизнеса. Кроме того, происходит повышения документированность реализованного функционала, согласованность описания требований и реализации, а также упрощается читаемость [2].
Блоки визуального программирования представляют собой куски кода, которые можно перемещать и комбинировать для создания сложных алгоритмов. Каждый блок имеет определенную функцию и может быть связан с другими блоками, чтобы создать цепочку выполнения команд.
Связи между блоками определяют порядок выполнения команд в программе. Например, если один блок должен выполниться после другого, то между ними нужно установить связь. Связи могут быть условными, то есть выполнение блока будет зависеть от определенного условия.
Одним из преимуществ визуального программирования является визуализация процесса выполнения программы. Визуальная нотация позволяет программистам видеть, как программа работает, что упрощает отладку и тестирование.
Однако, существуют и недостатки визуального программирования. Например, графическая нотация может быть ограничена в возможностях создания сложных алгоритмов. Кроме того, создание удобного интерфейса для визуального программирования может быть сложным процессом, так как потребует учета большого количества настраиваемых параметров и возможных комбинаций [3].
Тем не менее, инструменты визуального программирования продолжают развиваться и улучшаться. Они становятся более гибкими и удобными в использовании. Использование искусственного интеллекта может помочь улучшить интерфейс и сделать визуальное программирование более доступным для широкого круга пользователей.
В целом, визуальное программирование имеет большой потенциал для упрощения процесса создания программ и повышения эффективности работы программистов. Развитие этой технологии будет продолжаться и в будущем, что приведет к еще более удобным и эффективным инструментам для визуального программирования.
Проблемы при разработке инструмента визуального программирования. Как уже говорилось ранее, разработка собственного решения имеет ряд недостатков. Во-первых, одной из основных проблем при разработке инструмента визуального программирования является сложность создания удобного интерфейса. Хороший интерфейс должен быть интуитивно понятным и легким в использовании, чтобы пользователи могли быстро создавать свои алгоритмы. Однако, создание удобного интерфейса может быть сложной задачей, которая требует множества экспериментов и тестирования [4].
Во-вторых, ограничения в графической нотации. Визуальные языки программирования имеют свою графическую нотацию, которая определяет, какие блоки могут быть использованы и как они могут быть соединены. Однако, эти ограничения могут ограничивать возможности создания сложных алгоритмов, что может быть проблемой для разработчиков, которые хотят создавать более сложные программы.
В-третьих, недостаток гибкости в создании сложных алгоритмов также является одной из проблем при разработке инструмента визуального программирования. Визуальное программирование может быть ограничено в том, какие алгоритмы могут быть созданы, и как они могут быть реализованы. Это может ограничить способность разработчиков создавать сложные алгоритмы, которые могут быть необходимы для решения определенных задач.
В-четвертых, проблемы с отладкой и тестированием могут возникнуть при использовании визуального программирования. Отладка и тестирование визуальных программ может быть сложной задачей, особенно если программа содержит множество блоков и соединений. Неправильно соединенные блоки могут привести к непредсказуемому поведению программы, что может быть трудно исправить.
Вывод
Как уже было сказано инструменты визуального программирования разрабатываются для решения конкретных задач, т.к. требуют оставить ту же гибкость настройки решения при сокращении неиспользуемых компонентов. Таким образом необходимо заранее продумать все возможные ситуации и учесть их в разрабатываемом инструменте. В связи с чем каждый инструмент имеет свой тренд развития и зачастую он нацелен на поддержку существующего функционала и своевременное его расширение с учетом потребностей бизнеса [5].
Из перспектив развития можно выделить применение технологий искусственного интеллекта для повышения читаемости сгенерированного кода и его оптимальности. Инструмент визуального программирования подразумевает генерирование артефакта в формате программного кода. Но важно понимать, что мало просто получить работающую программу. Программный код должен быть написан таким образом, чтобы программист мог иметь возможность проанализировать его и внести корректировки. Это бывает полезно для проведения оптимизации и реализации алгоритмов, которые не были учтены при проектировании самого инструмента визуального программирования.
Список литературы:
- Морозова Н.М., Лец С.М. Визуальное программирование // Материалы Всероссийской научно-практической конференции «Наука и социум». 2022. №XIX;
- Коварцев А.Н., Жидченко В.В., Попова-Коварцева Д., Даниленко А.Н. Технология визуального моделирования параллельных алгоритмов. Язык pgraph // Известия Самарского научного центра РАН. 2019. №1;
- Якутин А.М., Корягин С.В. Проектирование и разработка приложения для визуального программирования // E-Scio. 2022. №2;
- Озерова Г. П., Лободина О. Н. Визуальная среда для обучения программированию // Перспективы развития информационных технологий. 2013. №16;
- Болдырева Ю.Ю,, Хворостухина Е.В. Проектирование сервиса визуального программирования для трансляции на язык promela // Вестник СГТУ. 2021. №2;
Оставить комментарий