Визуальное программирование

Визуальное программирование –что это?

Визуальное программирование-это создание компьютерной программы с использованием графических элементов.

визуальное программирование
визуальное программирование

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

Языки программирования часто имеют определенные способы представления работы, которая должна быть выполнена, что приводит к сложности. Визуальное программирование пытается упростить создание программ. Но пока текстовое программирование является основным видом программирования.

Визуальное программирование и его возможности

Графическое программирование позволяет людям описывать процессы с помощью иллюстраций. Типичный текстовый язык программирования заставляет программиста думать, как компьютер. Визуальный язык программирования позволяет программисту описать процесс в терминах, которые имеют смысл для людей.

текстовое программирование
текстовое программирование

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

Например, чтобы создать список дел в инструменте визуального программирования, программист рисует поток приложения. Результирующая блок-схема описывает экраны, взаимодействия пользователей и то, что происходит с данными на каждом этапе. Затем инструмент превращает это в программное обеспечение.

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

Визуального программирование следуют тем же процессам и парадигмам, что и текстовое программирование. Представьте, что вы рисуете класс и его связь с объектами, которые вы создаете, а не печатаете все это в текстовом редакторе. Все это звучит здорово! Но, спросите вы, где все визуальные программисты? Почему мы все еще пишем код вручную? Чтобы понять почему, давайте поймем истоки визуального программирования.

Рождение блок-схемы как прообраза визуального программирования

Начало 20-го века было временем утопических усилий по продвижению человечества вперед. Бурно развивалось производство и это вызвало необходимость документирования технологических процессов. В результате мы получили схему технологического процесса.

блок-схема
блок-схема

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

В 1949 году пионеры информатики Герман Гольдстайн и Джон фон Нейман стали первыми, кто применил блок-схемы для описания компьютерных программ, работая на компьютере ENIAC. Такой визуальный язык был необходим, когда программирование было вопросом правильной установки тысяч десятипозиционных переключателей кольцевого счетчика.

ЭНИАК
ЭНИАК

По мере развития вычислительной техники в последующие годы ученые впервые использовали языки ассемблера. Затем они перешли на языки более высокого уровня, такие как FORTRAN и COBOL, которые задают стандарты для языков, которые мы используем и сегодня. В каком-то смысле каждый новый язык был одним и тем же.

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

Визуальное программирование в современности

Рост мощности компьютерного оборудования позволил программному обеспечению решать все более сложные проблемы. Эта возросшая сложность привела к некоторому изменению роли визуального программирования и текстового программирования. Простую систему управления персоналом или технологическим процессом легко представить визуально.

В 1990-е годы визуальное программирование разделилось на три ветви, каждая из которых занималась определенной проблемной областью:     

  1. Бизнес-приложениями;
  2. Мультимедийными системами и играми;
  3. Развитием образования.
labview
labview

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

  • Tersus для веб-приложений
  • MVPL для робототехники
  • LabVIEW для ученых
  • SynthMaker для аудио инструментов

Визуальное программирование критикуют за то, что оно делает программы игрушечными. Также количество визуальных элементов, которые могут быть показаны на экране одновременно ограничено. Предел Дойча указывает, что может быть показано примерно 50 элементов.

Поэтому нет возможности писать очень сложные и разветвленные программы. Но программирование развивается и есть надежда, что визуальные языки также могут решать проблемы, как и текстовые.

Образовательные среды визуального программирования

Визуальное программирование Scratch или Lego активно используются в системах образования. Проект Lego Mindstorms предлагает визуальный язык программирования, основанный на LabVIEW, для взаимодействия с программируемыми блоками Lego.

Scratch
Scratch

Рассмотрим более подробно программируемые блоки Lego EV3. Блоки находятся в нижней части окна среды программирования Lego. Эта группа блоков носит название палитра блоков. Всего есть шесть типов блоков у которых для удобства в верхней части расположена полоса разного цвета:

  1. Блоки действия – семь блоков зеленого цвета
  2. Блоки управления операторами – пять блоков оранжевого цвета
  3. Блоки датчиков – одиннадцать блоков желтого цвета
  4. Блоки операций с данными – десять блоков красного цвета
  5. Блоки дополнений – десять блоков синего цвета
  6. Мои блоки – в этом типе блоков будут располагаться созданные вами блоки темно-зеленого цвета
Палитра блоков
палитра блоков Lego EV3

На начальном этапе изучения Lego EV3 используются в основном блоки действия, управления операторами и блоки датчиков. Остальные типы блоков используются для сложных проектов, для конкурсов и соревнований.

Визуальное программирование — будущее программистов?