Programování orientované na datový tok
Proud orientované programování dat předpokládá kontinuální tok dat , většinou datový signál, který se změní a výstup v reálném čase. Známými příklady jsou Simulink , Pure Data , Luster_ (programovací jazyk) nebo LabVIEW .
příběh
Stream-Oriented Programming vynalezl J. Paul Morrison na začátku 70. let - od té doby se v největších kanadských bankách neustále používá časná implementace této technologie.
Programování zaměřené na datové toky bylo zpočátku silně ovlivněno v té době simulačními jazyky IBM, zejména GPSS . Ale jeho kořeny sahají až k vynikající práci Melvina Conwaye na korutinách .
Objekty
Jednotlivé prvky, které vytvářejí a mění datový proud, se nazývají objekty. Jejich chování lze ovlivnit parametry. Lze je zhruba rozdělit do následujících kategorií:
zdroj
Zdroj je objekt, který generuje datový proud. Má alespoň jeden výstup, který může sloužit jako vstup pro jiný objekt.
- Externí zdroje: Externí zdroje získávají svá data mimo program, většinou z dat nebo ze vstupních zařízení (např. Mikrofon nebo videokamera).
- Interní zdroje: Interní zdroje generují určitý předdefinovaný datový proud. Může to být konstantní hodnota, ale také sinusové křivky apod.
uzel
Uzly mají alespoň jeden vstup, na který lze použít datový proud. Provádějí zadané operace s datovým tokem (např. Přidání vstupních signálů). Výsledek je k dispozici na výstupu nebo výstupech a lze jej dále zpracovat.
Snížit
Umyvadla jsou zodpovědná za výstup datového proudu, takže mají vstupy, ale žádné výstupy. Mohou stát buď za soubor, na který se zapisuje, nebo za výstupní zařízení, např. B. reproduktor nebo obrazovka.
Datový tok
Datový proud jsou většinou zvuková nebo obrazová data, vzácněji čisté číselné hodnoty. Vždy proudí od východu objektu ke všem přidruženým vstupům objektů, dokud nedosáhne jímky.
oblasti použití
Programování orientované na čistý datový tok je v současné době využíváno jednak umělci médií k vytváření multimediálních , interaktivních a distribuovaných děl (viz také: digitální umění ) . Na druhou stranu je hudební software Reaktor oblíbený mezi umělci žánrů elektronické hudby, který nabízí čistě grafickou funkcionalitu podobnou Pure Data , ale více přizpůsobenou vytváření virtuálních hudebních zařízení.
Tento typ programování se již dlouho etabloval v řídicí technice a stále častěji i ve vývoji vestavěných systémů .
Individuální důkazy
- ^ J. Paul Morrison, Flow-Based Programming , http://jpaulmorrison.com/fbp/ . Citováno 10. června 2010
- ^ ME Conway, Návrh oddělitelného kompilátoru přechodových diagramů , Komunikace ACM, sv. 6, č. 7. července 1963