WikiDer > Язык визуального программирования
В вычисление, а язык визуального программирования (VPL) любой язык программирования что позволяет пользователям создавать программы манипулируя элементами программы графически вместо того, чтобы указывать их текстуально.[1][2] VPL позволяет программировать с помощью визуальных выражений, пространственного расположения текста и графических символов, используемых как элементы синтаксис или же вторичное обозначение. Например, многие VPL (известные как поток данных или же схематическое программирование)[3] основаны на идее «прямоугольников и стрелок», где прямоугольники или другие объекты экрана рассматриваются как объекты, соединенные стрелками, линиями или дугами, которые представляют отношения.
Определение
VPL могут быть дополнительно классифицированы в соответствии с типом и степенью используемого визуального выражения на языки, основанные на значках, языки на основе форм и языки диаграмм. Среды визуального программирования предоставляют графические или пиктограммы, которыми пользователи могут манипулировать в интерактивном режиме в соответствии с определенной пространственной грамматикой для построения программ.
Общая цель VPL - сделать программирование более доступным для новичков и поддержать программистов на трех разных уровнях.[4]
- Синтаксис: VPL используют значки / блоки, формы и диаграммы, пытаясь уменьшить или даже полностью исключить возможность синтаксических ошибок, помогая упорядочивать примитивы программирования для создания правильно сформированных программ. Примеры без VPL - это проверка орфографии в текстовых процессорах с подчеркиванием или даже автоматическим исправлением отдельных слов или грамматики.
- Семантика: VPL могут предоставлять некоторые механизмы, раскрывающие значение примитивов программирования. Сюда могут входить справочные функции, обеспечивающие функции документации, встроенные в языки программирования.
- Прагматика: VPL поддерживают изучение того, что программы означают в определенных ситуациях. Этот уровень поддержки позволяет пользователям переводить артефакты, созданные с помощью VPL, в определенное состояние, чтобы изучить, как программа будет реагировать на это состояние. Примеры: В AgentSheets или же AgentCubes пользователи могут установить игры или симуляции в определенное состояние, чтобы увидеть, как программа отреагирует. С Тимио Пользователи языка программирования могут привести робота в определенное состояние, чтобы увидеть, как он отреагирует, то есть какие датчики будут активированы.
Визуально преобразованный язык - это невизуальный язык с наложенным визуальным представлением. Естественно визуальные языки имеют внутреннее визуальное выражение, для которого нет очевидного текстового эквивалента.[нужна цитата]
Текущие разработки пытаются объединить подход визуального программирования с программирование потока данных языков, чтобы иметь немедленный доступ к состояние программы, что приводит к онлайн-отладке или автоматическому созданию программы и документации. Языки потока данных также позволяют автоматическое распараллеливание, который, вероятно, станет одной из величайших проблем программирования в будущем.[5]
В Visual Basic, Visual C #, Visual J # и др. языки Microsoft Visual Studio IDE не являются языками визуального программирования: представление алгоритмов и т. д. является текстовым, хотя среда IDE приукрашивает операции редактирования и отладки с помощью богатого пользовательского интерфейса. То же самое относится и к большинству других быстрая разработка приложений среды, которые обычно поддерживают дизайнер форм а иногда также имеют графические инструменты для иллюстрации (но не определения) потока управления и зависимостей данных.
Парсеры для языков визуального программирования можно реализовать с помощью графовые грамматики.[6][7]
Список визуальных языков
Ниже приводится список известных языков визуального программирования.
Образовательные
- AgentCubes, 3D и 2D дизайн игр и моделирование дизайн инструменты вычислительного мышления.
- AgentSheets, инструмент для разработки игр и информатики.
- Алиса, объектно-ориентированный язык, используемый для программирования трехмерных сред.
- Аналитика, для построения и анализа количественных моделей для анализа решений и рисков.
- App Inventor для Android, инструмент для создания Android приложения, основанные на Блочно и Кава.
- Блочно, клиентская библиотека для языка программирования JavaScript для создания блочных языков визуального программирования (VPL) и редакторов
- Пузырь, для создания готовых к производству веб-приложения.
- CodeWorld, образовательная среда программирования, использующая Haskell, с полиморфными блоками, у которых Блочноразъемы на базе различаются в зависимости от блока тип возврата.
- Алгоритм потока, создает исполняемые блок-схемы, которые можно преобразовать на несколько языков.
- Классики, iPad app и визуальный язык программирования для создания мобильных приложений с сенсорным экраном.
- Kodu, инструмент визуального программирования для Логотип.
- Коджо, язык программирования, IDE, и учебная среда.
- mBlock, расширение Scratch для Ардуино аппаратные интерфейсы. Разработан Makeblock.
- Открытая Роберта, онлайн-среда программирования от Фраунгофера IAIS, рассчитанный на детей.
- Raptor, продукт ВВС США, для рисования исполняемых блок-схем.
- Царапать, продукт Массачусетский технологический институт, рассчитанный на детей дошкольного и внешкольного образования.
- ScratchJr, еще один продукт Массачусетский технологический институт, рассчитана на детей 5-7 лет.
- Щелчок!, браузерная повторная реализация BYOB, и продление Царапать, с первоклассными процедурами и списками. Используется для обучения в Калифорнийский университет в Беркли.
- Создатель Stagecast, ранее Apple Какао: Интернет-разработка для детей.
- StarLogo, агентный язык моделирования разработан Митчел Резник, Эрик Клопфери другие на MIT Media Lab. Расширение Логотип язык программирования (а диалект из Лисп).
- ToonTalk, система программирования для детей.
- Визуальная логика, для создания исполняемых блок-схем.
- VIPLE Среда языка программирования Visual IoT / Robotics
Мультимедиа
- AudioMulch, среда создания звука и музыки на основе потока аудиосигнала
- Bidule, модульная среда узлов и патч-кордов для создания интерактивной компьютерной музыки и мультимедиа (Windows, MacOS).[8]
- Черные чернила, программное обеспечение для цифровой живописи, ориентированное на инструмент для генеративного и процедурного искусства.
- Блендер (программное обеспечение), пакет 3D-графики с открытым исходным кодом, включает «редактор узлов» для создания программ затенения в виде графиков. Также настраиваемые узлы позволяют создавать системы как сверчок, блендграф или другие.
- Камелеон, графический функциональный язык
- ClickteamФабрика игр / серия Multimedia fusion, среды, созданные для визуально развивающих игр.
- Динамо, интерфейс генеративного моделирования для Autodesk Revit
- Фильтр Forge Генерация узловых фильтров для обработки изображений.
- Houdini (программное обеспечение) vfx, программное обеспечение для моделирования и анимации.
- Генеративные компоненты, параметрическое программное обеспечение САПР, разработанное Bentley Systems
- Кузнечик 3d, интерфейс генеративного моделирования для Носорог 3D
- Kyma (язык звукового дизайна), визуальный язык программирования для звукового дизайна, используемый музыкантами, исследователями и звукорежиссерами.
- Мама (программное обеспечение) - язык программирования и IDE для создания 3D-анимации и игр
- Макс (программное обеспечение), среда визуального программирования для создания интерактивных музыкальных и мультимедийных приложений в реальном времени
- Узловой, приложение для генеративного программирования на основе узлов для музыкальной композиции
- Ядерная бомба, объектно-ориентированное программное обеспечение для визуального программирования для визуальный эффект композитинг к Литейный завод работает на Tcl, Python и Blink-скрипте.
- OpenMusic, визуальный язык программирования для музыкальной композиции (на основе Общая объектная система Lisp (CLOS)) приложения и мобильные приложения
- Чистые данные (Pd) - это язык визуального программирования, разработанный для создания интерактивной компьютерной музыки и мультимедийных произведений.
- Кварцевый композитор, язык для обработки и визуализации графических данных (macOS)
- Реактор, язык обработки DSP и MIDI от Родные инструменты
- Scala Multimedia Пакет для разработки и полная мультимедийная система для AmigaOS и Windows
- Softimage, с интерактивной творческой средой ICE.
- SynthEdit, инструмент построения синтезатора с использованием VPL.
- TouchDesigner, визуальный язык программирования для мультимедийного контента в реальном времени
- Virtools, промежуточное ПО, используемое для создания интерактивных 3D-приложений.
- vvvv, универсальный инструментарий, специализирующийся на синтезе видео в реальном времени и программировании больших мультимедийных сред с физическими интерфейсами, анимированной графикой в реальном времени, аудио и видео.
- WireFusion, среда визуального программирования для создания интерактивных 3D веб-презентаций
Видеоигры
- Blender Game Engine (Редактор графической логики)
- Построй 2 - это редактор 2D-игр на основе HTML5, разработанный Scirra Ltd.
- Построить классический это предыдущая версия Construct с открытым исходным кодом на основе DirectX.[9][10]
- CryEngine имеет язык визуального программирования на основе узлов под названием FlowGraph.
- GameMaker Studio, имеет систему создания игр перетаскиванием, разработанную YoYo Games.
- GameSalad это инструмент для создания визуальных игр, разработанный GameSalad, Inc.
- GDevelop это инструмент для создания визуальных игр, созданный Флорианом Ривалем (4ian).
- Годо, собственный открытый исходный код Лицензия MIT программное обеспечение для разработки игр.
- Машина человеческих ресурсов это игра-головоломка на основе визуального программирования, разработанная Завтра Корпорация.
- Kodu, программное обеспечение, разработанное Microsoft Research для программирования игр с трехмерным интерфейсом.
- Kodular, онлайн-инструмент для создания приложений для Android, основанный на Изобретатель приложений MIT.
- Комната отдыха включает систему создания игр с языком визуального программирования на основе узлов под названием Circuits.
- Подснежник имеет систему визуальных сценариев.
- Стенцил, инструмент для создания видеоигр.
- Единство с момента выпуска ECS имеет систему визуальных сценариев.
- Unreal Engine 4 имеет язык визуального программирования на основе узлов, называемый Blueprints, а также шейдеры.
Многие современные видеоигры используют деревья поведения, которые в принципе представляют собой семейство простых языков программирования, предназначенных для модели поведения за неигровые персонажи. Поведение моделируется в виде деревьев и часто редактируется в графических редакторах.
Системы / моделирование
- Аналитика, коммерческий визуальный язык для моделей принятия решений на основе диаграммы влияния.
- BPEL (язык выполнения бизнес-процессов), в настоящее время графический пользовательский язык программирования, используемый для создания логики оркестровки для данных и веб-сервисов. Он основан на XML, но имеет графический интерфейс для более быстрого кодирования.
- ДРАКОН, графический алгоритмический язык
- EICASLAB, программный пакет, включающий графический язык для поддержки проектирования архитектур управления
- Flowcode это графический язык программирования для программирования встроенные микропроцессоры
- Схемы функциональных блоков, используется в программируемые логические контроллеры
- GNU Radio, набор инструментов разработки, который предоставляет блоки обработки сигналов для реализации программно-определяемых радиостанций и систем обработки сигналов.
- KNIMEKonstanz Information Miner - платформа для анализа данных, отчетности и интеграции с открытым исходным кодом.
- LabVIEW, графический язык, разработанный для инженеров и ученых
- Лестничная логика, язык, который имитирует логику реле, обычно используемую в программируемые логические контроллеры
- MeVisLab, кроссплатформенный рамки приложения за обработка медицинских изображений и научная визуализация
- Язык визуального программирования Microsoft, язык потока данных для робототехника программирование, которое является составной частью Microsoft Robotics Studio
- MindRover, игра-программирование роботов, использующая язык "проводки" потоков данных.
- Миниблок, визуальный язык программирования для робототехника и Ардуино совместимые платы
- Мастерская MST, интерактивный язык визуального программирования для создания математических решений, быстрого прототипирования, двумерных и трехмерных графических приложений.
- Узел-КРАСНЫЙ: инструментарий для быстрой разработки программных систем
- NXT-G, визуальный язык программирования для Лего Mindstorms NXT комплект робототехники
- OpenDX визуализация научных данных с использованием языка визуального программирования и модели потока данных
- OpenWire - добавляет возможности программирования визуального потока данных в Delphi через Библиотека визуальных компонентов (VCL) компоненты и графический редактор (одноименный двоичный протокол не имеет отношения)
- апельсин - An Открытый исходный код, инструмент визуального программирования для сбор данных, статистический анализ данных, и машинное обучение
- OutSystems language, язык визуального моделирования для разработки и изменения всех уровней бизнес-ориентированных веб-приложений
- Prograph - ан объектно-ориентированного программирования язык, использующий пиктограммы для обозначения действий, выполняемых с данными
- Проект Птолемея - проект, направленный на моделирование и конструирование в реальном времени встроенные системы.
- Qucs графический интерфейс для настройки моделирования поведения сигнала и шума электронной схемы
- Reallusion - iClone, 3D-программное обеспечение с языком Lua и визуальным программированием.
- ROBO Pro, визуальный язык программирования для fischertechnik комплект робототехники
- Scicos Графический язык, связанный с пакетом численного анализа ScicosLab (первоначально SciLab)
- Последовательная функциональная диаграмма, язык программирования, подобный сети Петри, для программируемые логические контроллеры
- Simulink, графическая среда программирования для моделирования, моделирования и анализа многодоменных динамических систем
- Stateflow, графический язык, который включает в себя исполняемые диаграммы перехода состояний, блок-схемы, таблицы перехода состояний и таблицы истинности
- СТЕЛЛА, VPL для моделирования системной динамики
- Softimage ICE, система на основе узлов, которая используется для создания и изменения 3D модели, моделировать частицы и выполнять различные другие задачи
- VEE
- VisSim, язык моделирования и симуляции, позволяет быстро создавать математические модели и выполнять их в реальном времени.
Автоматизация
- Автомат
- CIMPLE, Язык визуального программирования от ThinkLABs для обучения робототехнике
- Поток язык графической интеграции, используемый в webMethods Платформа
- Пилот трубопровода это научный визуальный язык программирования и программирования потоков данных, а также инструмент для разработки Платформа Accelrys Enterprise.
Хранилище данных / бизнес-аналитика
- Ab Initio, инструмент для ETL обработка путем создания графиков
- Дизайнер Alteryx, инструмент для обработки данных и аналитики, включающий SQL, R и Python.
- Апач Нифи, программный проект для автоматизации обмена данными между программными системами.
- IBM Cognos Business Intelligence, является примером интерфейсных программ в Бизнес-аналитика приложения, которые используются для генерации SQL запросы для выполнения СУБД базы данных
- IBM InfoSphere DataStage, инструмент ETL
- Informatica Powercenter это инструмент ETL для графического проектирования сопоставлений для загрузки данных в системах хранилищ данных
- Службы интеграции Microsoft SQL Server (SSIS), платформа для интеграции данных и приложений рабочего процесса
- Интеграция данных Pentaho (PDI), ранее называвшаяся Kettle, инструмент ETL с открытым исходным кодом
Разное
- Kwikpoint, визуальный переводчик изотипов, созданный Аланом Стиллманом
- Лава, экспериментальный объектно-ориентированный РАД язык
- Лимнор, система программирования общего назначения. Limnor Studio - это IDE для быстрой разработки программного обеспечения.
- Морфик (программное обеспечение), упрощает создание и редактирование графических объектов путем прямого управления и из программ; целый Самостоятельная (язык программирования) среда программирования построена с использованием Morphic
- Пит, эзотерический язык, программа представляет собой изображение, пиксели которого являются элементами языка
- PWCT, Бесплатный визуальный язык программирования с открытым исходным кодом для разработки программного обеспечения.
- Системы StreamBase, StreamBase EventFlow - это визуальный язык программирования для обработки потоковых событий.
- WebML, представляет собой визуальный язык для разработки сложных веб-приложений с интенсивным использованием данных, которые могут быть автоматически созданы
- Yahoo! Трубы система визуального программирования потока данных для обработки веб-данных[11]
- YAWL, графический язык рабочего процесса
Наследие
- AppWare, также известный как MicroBrew, программирование на основе значков для классическая Mac OS и Майкрософт Виндоус
- Macromedia Authorware - язык программирования на основе блок-схем
- Спираль и Double Helix, новаторская система управления базами данных для платформы Apple Macintosh, созданная в 1983 г.
- Создатель программного обеспечения для освещения, язык и IDE для визуального создания программного обеспечения для настольных компьютеров и мобильных устройств.
- ThingLab
Визуальные стили
- ДРАКОН (Дракон), а SDL- и AADL- интерактивный визуальный язык программирования 2D, предназначенный для разработки бортовой системы программного обеспечения жесткого реального времени для автоматического полета и посадки советских / российских Орбитальный космический корабль Буран (Метель)
- Исполняемый UML, а профиль из Универсальный язык моделирования спецификация, определяющая исполняемую семантику для подмножества UML
- Схема
- Подтекст
Смотрите также
- Карта аргументов
- Когнитивные измерения обозначений - Оценка нотации для визуальных и невизуальных языков
- Диаграмма связей
- Программирование потока данных
- Лимит Deutsch, афоризм об информационной плотности языковые примитивы в визуальной записи
- Доменно-ориентированное моделирование
- Перетащите и отпустите
- Программирование на основе потоков
- Рисование графика
- Платформа разработки low-code
- Платформа разработки без кода
- Программирование игры
- Единый язык моделирования
- Визуальный язык
- Визуальное мышление
Рекомендации
- ^ Йост, Беата; Кеттерл, Маркус; Бадде, Рейнхард; Леймбах, Торстен (2014). «Графические среды программирования для образовательных роботов: Open Roberta - еще одна?». 2014 Международный симпозиум IEEE по мультимедиа. С. 381–386. Дои:10.1109 / ISM.2014.24. ISBN 978-1-4799-4311-1.
- ^ Зрелость визуального программирования
- ^ Bragg, S.D .; Дрискилл, К. (1994). «Диаграммно-графические языки программирования и DoD-STD-2167A». Материалы AUTOTESTCON '94. С. 211–220. Дои:10.1109 / AUTEST.1994.381508. ISBN 0-7803-1910-9.
- ^ Покаяние, Александр (2017). «Выход за рамки синтаксиса: уроки 20-летнего программирования блоков в AgentSheets». Журнал визуальных языков и чувствительных систем. 3: 68–91. Дои:10.18293 / vlss2017-010.
- ^ Johnston, W.M .; Hanna, J.R.P .; Миллар, Р.Дж. (2004). «Достижения в языках программирования потоков данных» (PDF). Опросы ACM Computing. 36 (1): 1–34. Дои:10.1145/1013208.1013209. Получено 2011-02-16.
- ^ Rekers, J .; Шюрр, А. (1997). «Определение и анализ визуальных языков с помощью грамматик многоуровневых графов». Журнал визуальных языков и вычислений. 8 (1): 27–55. Дои:10.1006 / jvlc.1996.0027.
- ^ Чжан, Д.-К. (2001). «Контекстно-зависимый формализм грамматики графов для спецификации визуальных языков». Компьютерный журнал. 44 (3): 186–200. Дои:10.1093 / comjnl / 44.3.186.
- ^ http://www.computermusicjournal.org/reviews/31-* * * 2 / regan-bidule.html
- ^ Создать классическую домашнюю страницу
- ^ Создать классическую страницу на SourceForge
- ^ "Yahoo! pipe". Архивировано из оригинал на 2015-01-03. Получено 2015-01-03.
- Эта статья изначально была основана на материалах из Бесплатный онлайн-словарь по вычислительной технике, используется с разрешение. При необходимости обновите.