Flowstone что это за программа

Develop Faster

FlowStone uses a combination of graphical and text based programming. Applications are programmed by linking together functional building blocks called components. Events and data then flow between the links as the application executes.

Write Code in Ruby

FlowStone allows you to create your own components using Ruby. This is a very modern language that is incredibly easy to pick up.

The real power of FlowStone comes from modules. These are components that you define yourself. By building up a hierarchy of modules, you can quickly create complex behaviors.

Flowstone что это за программа. Смотреть фото Flowstone что это за программа. Смотреть картинку Flowstone что это за программа. Картинка про Flowstone что это за программа. Фото Flowstone что это за программа

Connect to The Outside World

FlowStone can interface with a vast range of external hardware. There’s support for USB devices, I/O cards, webcams and audio hardware. COM ports communication is built in so there’s support for industrial robotics and legacy systems. Networking allows you to connect to IP cameras or even other FlowStone applications running remotely.

Flowstone что это за программа. Смотреть фото Flowstone что это за программа. Смотреть картинку Flowstone что это за программа. Картинка про Flowstone что это за программа. Фото Flowstone что это за программа

Flowstone что это за программа. Смотреть фото Flowstone что это за программа. Смотреть картинку Flowstone что это за программа. Картинка про Flowstone что это за программа. Фото Flowstone что это за программа

Flowstone что это за программа. Смотреть фото Flowstone что это за программа. Смотреть картинку Flowstone что это за программа. Картинка про Flowstone что это за программа. Фото Flowstone что это за программа

One-Click Export

This is one of the most powerful features of FlowStone.

Once you are happy with your design running in the FlowStone environment you can simply click the export to EXE or VST buttons and your design will be wrapped up and made into a single, standalone program or plugin that you can run and distribute freely!

Exported executables can be run on any PC, laptop, or even your own embedded hardware. Exported plugins can be used in any VST compatible music software.

Interested?

Take the Trial version for a spin.

You can try the software for seven days. There are only two small limitations related to exports compared to the full version but otherwise it’s exactly the same. No registration required.

Источник

Визуальная среда разработки Flowstone

В последние годы все чаще и чаще встречаются визуальные среды разработки, которые предназначены для обеспечения программирования сложных процессов. Впрочем, их не так много, но общую тенденцию проследить можно. Конечно, наибольшей автоматизации подверглась сфера средств веб- разработки. Появилось много визуальных конструкторов. Помимо этого значимое развитие сейчас происходит в системах проектирования и визуализации инженерно-технических решений. А многие новые пакеты 3D-моделирования уже являются и средами разработки для компьютерных игр. В общем, ситуация не стоит на месте, и сегодня мы рассмотрим одного из малоизвестных и мощных представителей молодого поколения разработок — визуальный конструктор Flowstone от фирмы DSP Robotics (www.dsprobotics.com). Интересен он прежде всего тем, что разработчик не только продает свое ПО, но и специализируется на выпуске электронных компонент (датчиков, интерфейсов и т.п.). Другими словами, мы имеем довольно редкое сочетание разработчик/производитель, причем Flowstone является не(!) узкоспециализированной средой для общего применения. Собранные конструкции можно экспортировать в exe-файлы и применять в любых системах, где установлена ОС Windows.

Flowstone хорошо подходит для создания DSP-приложений под Windows

DSP Robotics Flowstone

Требования к установке: Pentium III/AMD и выше (должна иметься поддержка SSE), 512 Mб RAM, Windows 7/Vista/XP/2000.

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

Перво-наперво нужно выделить ее предназначение — работа с цифровым сигнальным процессингом (DSP — Digital Signal Processing).

Это подразумевает использование:
. в роботехнике;
. непосредственно в DSP-системах (IIR, FFT, PID, корреляция и т.п.).
. для обработки данных в режиме реального времени с различных внешних источников;
. для управления различными механизмами и сенсорами;
. анализа и обработки звука;
. автоматизации домашних устройств (например, управление температурой, освещением, включение музыки и т.п.),
. тестирований и измерений;
. для устройств управления доступом;
. для быстрого прототипирования устройств и приложений.

В общем, везде, где требуется программирование DSP. Основной базис программы — это, конечно же, звук, хотя уже на данный момент среда развилась до уровня более широкого применения и предусматривает, например, варианты управления роботами и устройствами. Другими словами, сейчас вы можете создавать программные структуры, ограниченные не только входами и выходами звукового интерфейса, но и USB, и ИК, и COM.

В рамках реализации мы имеем три варианта поставки Flowstone — бесплатная версия (хороша для ознакомления и обучения, но есть ограничения по количеству поддерживаемых внешних устройств и отсутствует экспорт в *.exe-файл), средняя по возможностям Enterprise ($295) и профессиональная Professional ($745) версии. Последние довольно дороги.

Использование Flowstone для управления роботами

Что интересно, Flowstone сильно напоминает модульные конструкторы для звука, которые в небольшом количестве присутствовали на рынке в начале 00- х. В их рамках из определенного набора компонент можно было на визуальном уровне собирать звуковые плагины и музыкальные инструменты. Между тем, такие решения не очень прижились, за исключением ныне популярной программы Native Instruments Reaktor, а также конструктора синтезаторов SynthMaker.

Разработчики из DSP Robotics решили пойти дальше, то есть, во-первых, не зацикливаться только на звуке, во-вторых, создать более универсальную визуализированную модель. Например, в тех же звуковых конструкторах вы не встретите таких компонент, как визуализаторы FFT (FFT — быстрое преобразование Фурье) и тому подобное. Здесь же вы можете собрать готовую программу с хорошим GUI, особенно не затрудняясь.

Также можно провести некую параллель с Matlab, но в Flowstone мы имеем более узкоспециализированную среду, к тому же от пользователей требуются только базовые знания.

Как в ней работать?

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

Графический интерфейс разделяется на несколько ключевых групп, среди которых:
. Главное меню.
. Панель инструментов (Компонент).
. Рабочая область.
. Окно навигации по рабочим областям.

Компонент очень много, и все они довольно удобно распределены по подгруппам, которые имеет смысл указать, для того чтобы вы более полно смогли представить себе картину.
. External — внешние устройства и порты, например, Audio In/Out, COM-порт и так далее.
. Element — стандартные событийные элементы типа After Load, After Duplicate.
. Maths — все математические операции, включая округление до целых чисел, работа с массивами и т.п., здесь представлена в виде готовых модулей, у которых есть входы, куда поступают исходные данные, и выходы, посредством которых передаются результаты.
. String — операции со строковыми типами данных в виде отдельных модулей.
. Flow — дополнительные промежуточные элементы для работы с данными.
. DSP — готовые модули цифрового сигнального процессинга, здесь вы можете найти генераторы, фильтры, модуляторы и т.п.
. Audio — специализированные аудиокомпоненты, а именно, ADSR-огибающие, обработка MIDI-сообщений, матрицы подключений.
. Imagery — загрузка изображений, видео.
. GUI — кнопки, индикаторы и другие интерфейсные элементы.
. System — основные блоки настройки для экспортированной exe-программы. Здесь можно сформировать главное меню и так далее.
. Other — остальные, не вошедшие ни в одну из названных групп.

Видеоплеер/рекордер, созданный в Flowstone

Стоит сказать, что перед тем как приступить к работе с программой, нужно разобраться не столько в самих Компонентах, сколько в Коннекторах. Дело в том, что все входы и выходы помечаются специальными символами. Например, «I» указывает на то, что данный вход или выход подразумевает использование целых значений (т.е. integer) и так далее. Естественно, начальные знания в области программирования у пользователя должны быть, иначе он просто не сможет работать. И как он это сделает, если не понимает, что такое массивы и переменные? Помимо этого тот же самый пользователь должен обладать знаниями в области цифрового сигнального процессинга, чтобы понимать, что, куда и зачем идет.

Нужно сказать, что компания DSP Robotics занимается не только разработкой среды Flowstone, но и продает всевозможные сенсоры, датчики, электронные модули и аппаратные интерфейсы. То есть сама среда разработки родилась не на пустом месте. И сами блоки (Компоненты) разделены качественно, то есть применимы для различных областей.

Если вы обладаете знаниями начального уровня в области программирования и DSP-процессинга, то освоение не будет долгим. Первые дни идет привыкание к интерфейсу, изучению Компонент и вариантов Коннекторов. Стоит отметить, что у среды имеется разносторонний Help, правда, с одним недостатком — приведено мало примеров использования того или иного Компонента. Вместе с тем на сайте разработчика имеется множество собранных схем, сохраненных в формате *.fsm (внутренний формат файлов). Поэтому перед тем как приняться создавать что-либо свое, рекомендуется изучить то, что есть. В примерах как от самих разработчиков, так и от сторонних пользователей вы сможете ощутить всю мощь среды Flowstone. Потому как там есть видеоплееры/рекордеры, мр3-пллеры, полноценные реализации интернет-радио, эквалайзеры и т.п.

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

Пример использования Code Component. В результате ввода наших строк на самом модуле появились новые входы и выходы

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

В рамках среды Flowstone предусмотрено и обычное программирование, для чего используется специальный Компонент Кода (Code Component), который находится в закладке DSP. В его рамках вы можете пользоваться скриптовым С++-подобным языком. Код может выглядеть так:

streamin in;
streamout out;
float gain;
gain = 2.0;
out = in*gain;

Согласно этому коду, после его введения в Code Component у вас автоматически (!) появляются один in и один out, а сам модуль выдает результат после вычислений по единственной формуле. Параметр/переменную gain можно поместить и в качестве входных данных, подключив его, например, к ручке управления уровнем сигнала.

В общем, скриптовое программирование несложное. При этом мы неспроста говорим о скриптах, а не о полноценном языке, поскольку в Flowstone все очень урезано. В рамках программирования подразумеваются только вычисления, при этом вы не можете явно создавать собственные функции. Это возможно только в случае, если саму функцию вы реализуете в виде отдельного Code Component. Даже в примере с нашим кодом мы создали отдельную функцию (умножение входного сигнала на значение gain). А в дальнейшем все собирается по блокам. Можно сказать, визуализированное ООП и процедурное программирование одновременно.

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

Пример FM-модулятора в Flowstone

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

Компьютерная газета. Статья была опубликована в номере 41 за 2010 год в рубрике soft

Источник

Blogerator.org

Эксклюзивные ИТ-новости, обзоры и интервью

Современное визуальное программирование: классика VPL

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

Для роботов и DSP уже фактически брендовой является среда DSP Robotics Flowstone, в области веба мы можем наблюдать огромное количество CMS, а если говорить о конструкторе, то лучший и популярный — британский Serif Web Plus, в звуковых технологиях очень много продукции создается в Synth Edit и Synth Maker, разработка игр сейчас переживает очередную революцию, при этом интерактивные мультимедийные приложения можно легко и быстро создавать в Scirra Construct, Multimedia Fusion и так далее. При этом обратите внимание на то, что мы назвали ниши, в которых десять лет назад требовались серьезные программисты.

В принципе, фактически все сейчас смещается в сторону визуального программирования (VPL). Ранее мы уже рассмотрели отдельный тренд визуального программирования — сильно-визуальные языки, а теперь мы уделим наше и ваше внимание более классическим, а также узкоспециализированным средам этого течения программирования.

DSP Robotics Flowstone

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

Но в целом мы говорим о DSP (цифровом сигнальном процессинге), поэтому сфера применения может быть различной.

Flowstone что это за программа. Смотреть фото Flowstone что это за программа. Смотреть картинку Flowstone что это за программа. Картинка про Flowstone что это за программа. Фото Flowstone что это за программа

DSP Robotics предложила свою среду для программирования любых DSP-систем, и что самое важное, обеспечила прямой доступ к стандартным «источникам» и «потребителям» цифровых сигналов — сенсорам, датчикам, микроконтроллерам, стандартным внешним и внутренним интерфейсам.

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

Flowstone что это за программа. Смотреть фото Flowstone что это за программа. Смотреть картинку Flowstone что это за программа. Картинка про Flowstone что это за программа. Фото Flowstone что это за программа
Видео-плеер/рекордер (программа), созданный в Flowstone за 5 минут

В принципе, до этого существовало множество схожих сред, в которых мы могли брать программные прототипы тех же микроконтроллеров и других элементов, но в данном случае все стало более-менее упрощенным.

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

Для новичков в области программирования DSP можно порекомендовать визуальный конструктор-обучающую систему Yenka. В ней вы можете создавать любые электрические схемы, в том числе с использованием двигателей, микроконтроллеров и т.п., а потом просто наблюдать результат. Кстати, лично мне Yenka понравилась тем, что в ней можно проектировать те же ветряные электростанции. Программа рассчитана на школьников и студентов.

Serif WebPlus

Конструктор WebPlus быстро приобрел популярность в силу того, что позволяет создавать сайты, конструировать их дизайн вообще без какого-либо знания HTML и верстки. Интерфейс напоминает Adobe Photoshop, только в панели инструментов размещен набор компонент, таких как изображения, текстовые блоки, таблицы, флэш, графические объекты и так далее. Все очень удобно и быстро работает. На страницу, которая является рабочей областью, пользователь помещает необходимое, причем располагает все в любом понравившемся месте, после чего программа генерирует код и переводит все на язык HTML с привязкой к JavaScript. У каждого объекта имеется расширенный спектр свойств, например, есть управление прозрачностью, добавление спецэффектов и так далее.

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

Flowstone что это за программа. Смотреть фото Flowstone что это за программа. Смотреть картинку Flowstone что это за программа. Картинка про Flowstone что это за программа. Фото Flowstone что это за программа

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

Конкуренты. Что самое интересное, конкурентов не так много, поскольку рынок средств для создания сайтов довольно-таки сильно насыщен, а создание подобного ПО является технологически сложным процессом. Но сама идея конструктора повторена и в чем-то усилена в WYSIWYG Web Builder, который тоже набрал большое количество сторонников буквально за последний год-два. Не так давно разработчики из Serif предложили пользователям бесплатную версию своего продукта, в которой доступно много полезного функционала.

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

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

SynthEdit

SynthEdit — это самый популярный конструктор для создания звуковых плагинов (подключаемых модулей с инструментами и эффектами для программ многодорожечной записи). Мы уже упоминали его ближайшего конкурента SynthMaker, рассказывая о Flowstone, но в данном случае выигрыш именно этой среды разработки получился в силу большей легкости освоения и одной довольно специфической вещи. Для опытных программистов (С++) есть специальный вариант программы с собственным SynthEdit SDK, в которой имеется уже множество спрограммированных алгоритмических блоков.

И это позволяет создавать профессиональные приложения уже не совсем «с нуля».

Flowstone что это за программа. Смотреть фото Flowstone что это за программа. Смотреть картинку Flowstone что это за программа. Картинка про Flowstone что это за программа. Фото Flowstone что это за программа

Для обычных пользователей предлагается стандартный визуальный конструктор с набором компонент, из которых можно собирать каскады любого уровня сложности и. вложенности, объединяя созданные алгоритмические блоки в контейнеры. Программе много лет, и в ней отточено практически все, в том числе, и эргономика. В данном случае ситуацию можно назвать красивым примером объектно-ориентированного проектирования (подчеркнем, именно «проектирования»). Дело в том, что во многих визуальных конструкторах не предусматривается объединение больших логических блоков в визуальные модули, что затрудняет проектирование как таковое. В целом, в SynthEdit можно проводить время сутками, даже ничего не создавая, а рассматривая готовые примеры, созданные в этой программе, коих очень много.

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

Сейчас большинство (чуть ли не 90%) аудиософта создается с помощью конструкторов. SynthEdit не является чем-то особенно удивительным для большинства пользователей звуковых технологий, потому как они все являются инженерами или инженерно мыслят. Очень много конструкторов реализовано в рамках специализированных программных оболочек. Например, в Native Instruments Reaktor вы можете создать схему любой сложности и сразу же применять ее в работе. Что касается конструкторов как отдельных программных сред для создания плагинов, то незыблема тройка: Quantum FX, SynthEdit и SynthMaker.

Scirra Construct

Scirra Construct — это, пожалуй, на сегодня один из самых популярных конструкторов для создания небольших игр и мультимедийных приложений. Популярность приобрели ранние версии продукта — Construct Classic, которые работали на базе DirectX и позволяли компилировать приложения в exe-файлы. Нынешняя версия 2 уже так не работает, поскольку не только переписана заново, но проецируется на другую технологическую нишу — HTML5. К тому же, она является платной, в отличие от предыдущих версий.

Flowstone что это за программа. Смотреть фото Flowstone что это за программа. Смотреть картинку Flowstone что это за программа. Картинка про Flowstone что это за программа. Фото Flowstone что это за программа

Популярность Construct пришла по трем причинам. Первая — бесплатность Construct Classic. Вторая — сравнительная легкость освоения и наличие всех необходимых атрибутов разработки (компоненты типа спрайтов, интерфейсных элементов, грамотно сделанный отладчик и т.п.). Третья — опережение ближайших конкурентов.

Например, в момент популяризации Construct известный многим Game Maker от Yo Yo Games обновлялся крайне нестабильно. Другие только начинали разворачиваться в эту сторону, эргономика большинства конструкторов оставляла желать лучшего. Сам разработчик Construct до этого трудился в команде известного Multimedia Fusion, но при этом решил сделать что-то свое по собственному усмотрению, которое оказалось более современным.

Отдельно нужно отметить качество программирования продукта, в стабильных версиях Construct ошибок и слетов фактически нет.

Конкуренты. У Construct Classic есть очень близкий и подобный по функционалу французский конкурент Game Develop. Его интерфейс, фактически, идентичен, программирование «без программирования» построено по тому же принципу. Единственная разница заключается в том, что в Game Develop чуть изменена философия — все реализуется на уровне объектов, которые включают в себя что-либо из стандартного (спрайты и т.п.).

Также стоит сказать об упомянутом выше GameMaker. А в целом, сейчас и более профессиональные среды разработки, такие как Torque или Unity, довольно близко стоят к конструкторам по легкости освоения. Для совсем новичков и детей есть очень хороший и простой визуальный конструктор игр от Microsoft — Kodu.

HiAsm Studio

Hiasm, пожалуй, одна из самых популярных (и универсальных!) программ такого рода (несмотря на название, она не имеет прямого отношения к ассемблеру, хотя её возможности более низкоуровневые по сравнению с аналогичными разработками). На ней вы можете создать даже свой собственный игровой движок. Это бесплатная среда разработки win32-приложений, PHP, html и js-скриптов и страниц, а так же приложений для КПК на базе Windows Mobile.

При разработке программ от пользователя не требуются обязательного знания языков программирования и особенностей функционирования ОС, при этом HiAsm позволяет быстро и легко писать (рисовать) небольшие программы. К ней имеется множество дополнительных пакетов, которые делают данную программу просто кладезем неограниченных возможностей.

Flowstone что это за программа. Смотреть фото Flowstone что это за программа. Смотреть картинку Flowstone что это за программа. Картинка про Flowstone что это за программа. Фото Flowstone что это за программа

Базовый пакет, поставляющийся вместе со средой, позволяет разрабатывать небольшие Windows-приложения с использованием любых стандартных ActiveX-компонентов Интернета, баз данных, графики (GDI и OpenGL), широких мультимедиа возможностей (звука), и многого другого, а так же менее интересные фоновые программы, апплеты панели управления, библиотеки DLL и прочее.

Я не буду здесь останавливаться на ней подробно, так как об этой среде написано ну очень много. Чтение я рекомендую начать вот с этих двух качественных источников: первое и второе; кроме того доступно очень много обучающего видео по HiAsm. Лично для меня эта среда наиболее симпатична и удобна из всех сегодня рассмотренных (может быть это следствие огромной коллекции качественных ActiveX накопленных мною за пару лет обычного программирования на Visual Studio?).

О программировании «без программирования»

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

Во-первых, программирование с помощью мыши. Думаю, что на этом моменте стоит заострить особое внимание, потому как стиль программирования в Scirra Construct, Game Develop и нескольких подобных решений наталкивает на спорные мысли. И именно он сейчас начинает распространяться на широкий спектр приложений, например, нечто подобное уже можно увидеть в нескольких новых IDE.

И как вам последовательность действий для создания простого условия!?

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

Flowstone что это за программа. Смотреть фото Flowstone что это за программа. Смотреть картинку Flowstone что это за программа. Картинка про Flowstone что это за программа. Фото Flowstone что это за программа
При визуальном программировании редакторы кода заменены на редакторы событий, но смысл не меняется

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

Чем больше элементов содержит файл проекта, тем больше будет требовать от ресурсов ПК

Во-первых, работа с ним. А в игровых конструкторах и еще паче — ваш исполняемый файл строится по подобию того же файла проекта. Например, вы создали один уровень либо одну страницу мультимедийного приложения и при запуске исполняемого файла программа будет занимать N памяти RAM и VRAM. Затем создаете второй уровень или сцену с другим контентом. Запускаете программу, и хотя находитесь на первой сцене, она занимает N+M памяти, то есть, подгружаются все внутренние данные. Таким образом, по мере роста проекта можно запросто столкнуться с Out of Memory.

Большинство подобных конструкторов для неопытных пользователей предлагает единственное средство — разделение данных на внешние и внутренние, и в тех же Construct Classic, Game Develop и многих других это указывается неявно. А в менее продуманных «поделках» так и вообще все грузится во внутренние ресурсы.

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

Подытожим

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

Мы уже не раз были свидетелями того, как обычные пользовательские приложения превращались в глобальные популярные среды. Достаточно привести в пример Adobe Flash. Поэтому относиться несерьезно к тем же Scirra Construct или Game Maker все-таки не стоит — еще неизвестно, что выстрелит в итоге. Например, еще пару лет назад очень выгодно смотрелась среда для создания интерактивных мультимедийных приложений Multimedia Builder (я писал о ней ранее более подробный обзор в сравнении с почти полным аналогом — NeoBook), которая по своим возможностям и одновременно простоте и сейчас затыкает за пояс огромное количество конструкторов и новоявленных IDE. Но программа так и не получила массовой поддержки, в результате чего ее разработка была свернута. Какая причина?

На мой взгляд, очень много в Multimedia Builder (MMB) было новаторского и самостоятельного. Тот же Flash, на этапе разработки в Macromedia, изначально базировался на принципе GUI от Photoshop, на нем же построен и описанный нами выше Serif WebPlus. Flowstone также заимствовала очень многое из популярных конструкторов прошлого, в SynthEdit взят за основу принцип графического построения, известный еще с середины Scirra Construct взял лучшее из имеющегося на рынке. То есть, везде можно наблюдать преемственность технологий. Никаких революций уже давно не происходит. А конкуренция во всех сферах сейчас очень серьезная, например, как вам вот такой вариант визуального программирования в интернете? Про два более традиционно-десктопных монстра визуального программирования FileMaker и Visual Studio LightSwitch я уже ранее писал в этом блоге достаточно подробно.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *