Классическое программирование

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

Классическое программирование можно разделить на 2 разновидности:

- Live coding (во время написания кода, результат сразу появляется на экране)
- Компилируемый код (чтобы увидеть что получается, каждый раз надо ждать пока пересобирется программа)

Первый вариант используется для шейдеров, музыки и иногда для самой логики, если использовать например python (но чаще для логики программы применяют компилируемые языки).

Второй вариант используется для логики.

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

Классическое программирование, image #1
Классическое программирование, image #2
Классическое программирование, image #3
1 of 3

Если вы совсем начинающий и вам интересно разобраться с программированием, то советую начать с Processing. Он изначально создавался для студентов, художников, дизайнеров, и имеет простой и логичный синтаксис (по названию команд легко догадаться, что она делает и все лишнее скрыто внутри самого фреймворка, что облегчает понимание). Так же при установке сразу идет все необходимое для того, чтобы сразу начать работу (текстовый редактор с подсветкой синтаксиса, работа с библиотеками). После изучения processing, другие языки программирования будет учить намного легче и будет уже понимание, что учить дальше (какой язык, редактор выбрать для работы).

Классическое программирование, image #4

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

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

Выводы

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

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

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

Программы из данной категории

Графика:

- Processing (https://processing.org/)
- openFrameworks (https://openframeworks.cc/)
- Cinder (https://www.libcinder.org/)
- nannou (http://nannou.cc/)
- KodeLife (https://hexler.net/software/kodelife)
- kivy (https://kivy.org/)

Музыка:

- Sonic Pi (http://sonic-pi.net/)
- Csound (https://csound.com/)
- Tidal (https://tidalcycles.org/)
- SuperCollider (https://supercollider.github.io/)
- FRAGMENT (https://www.fsynth.com/)

Больше — https://t.me/m0d_le

1668 views·28 shares