Základy programování v umělecké praxi

Z CASWiki

Přejít na: navigace, hledání

Definice: Programovací jazyk je způsob zápisu algoritmu, logicky uspořádané souslednosti kroků, které má vykonat počítač. [1]

Prakticky každé audiovizuální dílo využívající počítač, nebo jeho minimalizovanou formu (např. midi kontroler, telefon, digitální videomix) používá programy. Programy jsou nutnou součástí všech digitálních přístrojů. Tato sekce se týká programování, které je nadstavbou běžných nástrojů a směřuje ke specializovaným realizcím nad rámec běžné funkcionality. Jsou tu naznačeny základní principy programovacích jazyků a nejběžnější realizce v rámci audiovizuálních médií, které jsou specificky navrženy pro konkrétní dílo.


Aplikace v umění:

Příklady umělecké realizce s použitím programování:

Ve skutečnosti představují tyto projekty velmi pokročilé formy počítačového a audiovizuálního umění. Základní programování se stejně tak používá pro řešení dílčních drobných problémů a pro diváka může být zcela "neviditelné".

Například:


Kde je program a jak je vykonán

Program obsahující soubor dílčích instrukcí je umístěný v paměti. Pamětí může být libovolný datový nosič, pamět RAM, HDD, CD, DVD, Flash paměť, atd. Program je vykonáván procesorem, jeho výstup obvykle směřuje na nějaké výstupní zařízení (grafická karta a monitor, zvuková karta a reproduktor, USB výstup, MIDI výstup atd...).

Typy programovacích jazyků

Programovacích jazyků je velké množství a lze je rozdělit podle nejrůznějších kritérií.

Dle složitosti:

Dle interpretace:

Obvyklejší jsou různé kombinace kompilace a interpretace, například kompilace do tzv. mezikódu. V praxi je největší rozdíl v tom, že kompilovaný kód může být většinou proveden počítačem bez přítomnosti programovacího prostředí (naprostá většina komerčních aplikací), zatímto nekompilovaný kód je obvykle spuštěn v jeho editovatelné podobě přímo v programovacím prostředí. To však vyžaduje specifickou konfiguraci počítači a instalaci zvláštního software.

Výše zmíněné rozdělení se týká především "klasických" programovacích jazyků, které jsou zapisovány jako texty. Jednotlivé jazyky obsahují řadu podobných konstrukcí, liší se především ve vnitřní logice a syntaxi zápisu, dále také v různém rozpracování specifických funkcí, například pro práci s textem, řetězci, poli, grafikou, atd. Příkladem takového jazyka je např. Javascript, C++, Processing, ASP, SuperCollider, a další.

Zvláštní skupinou jazyků jsou tzv. vizuální programovací jazyky, které nevyužívají formu zápisu textu, ale vizualizovanou formu zápisu v podobě zvláštního rozhraní. Jsou zpravidla jednoduší, některé funkce mají omezeny, nebo upraveny specifickým účelům. Příkladem vizuálního programovacího jazyka je Max/MSP, nebo PureData.

Speciální formou programovacích jazyků jsou zvláštní zjednodušené jazyky navržené pro umělecké realizace. Zpravidla neumožňují řešení problému na zcela základní bázi, obsahují však řadu instrukcí a funkcí pro zacházení s mediálním obsahem. Některé jsou zjednodušeny do té míry, že o nich nelze mluvit jako o programovacím jazyce, jako spíše o vývojovém prostředí. Nejpoužívanější z nich jsou:

Základní struktury

Osobní nástroje
Jmenné prostory
Varianty
Akce
Navigace
Nástroje