Визуальное программирование
Возможно, эта статья содержит оригинальное исследование. |
Эта статья или раздел нуждается в переработке. |
Визуальное программирование — способ создания программы для ЭВМ путём манипулирования графическими объектами вместо написания её текста. Визуальное программирование часто представляют как следующий этап развития текстовых языков программирования. Наглядным примером может служить утилита Визуальный Pascal или Microsoft Visual Studio, где редактируются графические объекты и одновременно отображается соответствующий текст программы. В последнее время визуальному программированию стали уделять больше внимания — в связи с развитием мобильных сенсорных устройств (КПК, планшеты). Визуальное программирование в основном используется для создания программ с графическим интерфейсом для операционных систем с графическим интерфейсом пользователя. Среда визуального программирования позволяет написать Веб-приложение для браузеров. Среда визуального программирования позволяет создать консольное приложение (программа без графического интерфейса и без вывода сообщений в консоль) для программирования микроконтроллеров, программируемых микросхем.
Необходимо различать:
- графический язык программирования — который прежде всего язык программирования (со своим синтаксисом)
- визуальные средства разработки — как правило, под ними подразумевают средства проектирования интерфейсов или какую либо CASE-систему для быстрой разработки приложений или SCADA-систему.
Языки визуального программирования могут быть дополнительно классифицированы в зависимости от типа и степени визуального выражения, на следующие типы:
- Языки на основе объектов, когда визуальная среда программирования предоставляет графические или символьные элементы, которыми можно манипулировать интерактивным образом в соответствии с некоторыми правилами. Пример: Скретч.
- Редакторы форм, позволяющие ставить мышью части пользовательского интерфейса и настраивать их свойства. Примеры: Delphi и C++ Builder фирмы Borland, С#, MS Access, C++ посредством использования wxSmith в составе свободной кроссплатформенной среды разработки Code::Blocks.
- Языки схем, основанные на идее «фигур и линий», где фигуры (прямоугольники, овалы и т. п.) рассматриваются как субъекты и соединяются линиями (стрелками, дугами и др.), которые представляют собой отношения. Примеры: редакторы взаимосвязей в реляционных БД, UML.
В современных разработках делаются попытки интегрировать подход визуального программирования с программированием потоков данных (англ. dataflow programming), чтобы иметь непосредственный доступ к состоянию программы для онлайновой отладки, или автоматизированная генерация и документирование программы. Языки потоков данных также позволяют делать автоматическое распараллеливание, которое может стать одним из величайших достижений программирования в будущем.[1]
Знаменитая статья Майка Хэдлоу[2] говорит о фундаментальных ограничениях визуального программирования:
- Ограничения визуального интерфейса могут запутывать разработчика даже больше, чем текстовый код.
- С повышением сложности программ программист начинает заниматься абстракцией и снижением связности, и класс программиста определяется тем, насколько удачно это получилось. Визуальные средства резко занимаются этим.
- Для текстового кода существует множество инструментов: системы управления версиями, автодополнение и просто разделение кода на модули.
Графические, или визуальные, языки программирования
Список примеров в этой статье не основывается на авторитетных источниках, посвящённых непосредственно предмету статьи. |
- App Inventor — Cреда визуальной разработки android-приложений, требующая от пользователя минимальных знаний программирования.
- Sketchware — Среда визуальной разработки приложений для Android.
- Дракон-схемы — графический язык программирования, используется для программирования в ракетно-космической технике («Буран», «Морской старт», «Тополь»). Существует бесплатный Дракон-редактор. Этот язык имеет наиболее строгое теоретическое обоснование.
- Язык последовательных функциональных схем SFC (Sequential Function Chart) — графический язык программирования широко используется для программирования промышленных логических контроллеров PLC.
- HiAsm — это язык и среда разработки приложений, которая позволяет создавать приложения, управляя их моделью с помощью интуитивно понятного графического интерфейса HiAsm.
- В SFC программа описывается в виде схематической последовательности шагов, объединённых переходами.
- LD — язык релейно-контактных схем.
- FBD — язык Функциональных блоковых диаграмм.
- Язык CFC (Continuous Flow Chart) — ещё один высокоуровневый язык графического программирования. CFC — это дальнейшее развития языка FBD. CFC был специально создан для проектирования систем управления непрерывными технологическими процессами.
- Язык «G» системы LabVIEW — один из самых распространенных языков разработки программ, работающих с некомпьютерным оборудованием.
- VisSim — это визуальный язык программирования предназначенный для моделирования динамических систем, а также проектирования, базирующегося на моделях, для встроенных микропроцессоров.
- Блокли — это библиотека для создания среды визуального программирования, которая может быть встроена в произвольное веб-приложение.
- Кибор — Интегрированная среда создания бот программ автоматизации. Обладает визуальным инструментом для построения программ с помощью блок схем. Для визуального программирования требуется минимум навыков программирования.
- Verge3D Puzzles - основанный на Блокли фреймворк для программирования интерактивных 3D-приложений, работающих в браузере.
Визуальные средства разработки
Список примеров в этой статье не основывается на авторитетных источниках, посвящённых непосредственно предмету статьи. |
- App Inventor, среда визуальной разработки android-приложений, требующая от пользователя минимальных знаний программирования
- AgentSheets, легкая в использовании авторская система для игр и научных расчётов
- Alice
- Automator
- Befunge, эзотерический текстовый язык программирования, в котором команды размещаются графически в текстовом файле
- HiAsm, конструктор программ
- LabVIEW, среда графического программирования, разработанная для инженеров и учёных
- ROBO Pro
- Thyrd, свободная, открытая графическая среда программирования (иерархия графических примитивов) на базе языка Forth (Форт)
- ДРАКОН, язык, созданный для разработки советского космического корабля Буран
- Visual Prolog, система визуального программирования объектно-ориентированного расширения языка программирования PDC Prolog.
Примечания
- ↑ Johnston, W.M.; Hanna, J.R.P. and Millar, R.J. Advances in dataflow programming languages (неопр.) // ACM Computing Surveys (CSUR). — 2004. — Т. 36, № 1. — С. 1—34. — doi:10.1145/1013208.1013209. Архивировано 27 сентября 2007 года. Архивная копия от 27 сентября 2007 на Wayback Machine
- ↑ https://habr.com/ru/company/edison/blog/432334/
Ссылки
- appinventor.mit.edu — Официальный сайт App Inventor
- PureBuilder — среда визуальной разработки, в настоящее время разрабатывается
Для улучшения этой статьи желательно:
|