Adatfolyam programozás

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2019. augusztus 4-én felülvizsgált verziótól ; az ellenőrzésekhez 10 szerkesztés szükséges .

Az adatfolyam- programozás egy olyan programozási  megközelítés, amelyben a program egy adatfolyam- digráfként van modellezve a műveletek között, hasonlóan az adatfolyam- diagramhoz . Az 1970- es évektől kezdve a szoftverfejlesztésben fejlesztették [ 1] .

A természetes vizuális megjelenítés és a párhuzamosság támogatása ennek a paradigmának két olyan jellemzője, amelyek vonzóak a fejlesztők számára [1] . Természetesen az adatfolyam-programozás nem feltétlenül tartalmaz vizuális programozási eszközöket .

A Unix programozók ismerik az adatfolyam-programozást, mert a Unix shell nevű csöveket és más hasonló folyamatok közötti kommunikációs lehetőségeket használ [2] .

Leírás

Az adatfolyam-programok (dataflow) munkájának alapja a számítások aktiválása a fekete dobozoknak tekinthető csomópontokon (node), amelyeket a bemeneti adatok változásai, frissítései okoznak. A csomópont (a modellben a gráf csúcsa) egy olyan elem, amely a bemeneti adatokat feldolgozza, és azokat kimeneti adatokká alakítja. Egy csomópont működése az aktiválási periódus alatt egyetlen számításnak minősül. A csomópontok portokon (porton) keresztül küldenek és fogadnak adatokat - ívek (grafikon élek) és csomópontok kapcsolódási pontjai . A portok minden, ami összeköti a gazdagépet a környezetével. A csomópontoknak lehetnek neveik, amelyek megkülönböztetik őket. A csomópont kiszámításának eredménye gyakran, de nem feltétlenül, a bemenet függvénye , vagyis az eredmény idővel változhat. A csomópont számítási munkáját aktiválásnak (aktiválásnak, tüzelésnek) nevezzük. Aktivált állapotban a csomópont bemeneti adatokat vesz, számításokat végez, kimeneti adatokat küld a megfelelő portokra. A továbbított adatokat, típusuktól függetlenül, tokennek nevezzük . A tokenek ívek mentén jönnek (nevezhetjük éleknek, linkeknek, kapcsolatoknak). Az adatok megjelenése a bejövő íven a csomópont aktiválását okozhatja. Általában azt feltételezik, hogy az ívben legfeljebb egy token található, de elméletileg lehetséges korlátlan kapacitású modellek létrehozása. A fejlettebb modellekben az ívek egybeolvadhatnak vagy elágazhatnak [3] [4] .

A programozás eredményeként adatfolyam-programot kapunk - irányított gráfot. Az elemek interakciójának minden módját a programozó kifejezetten beállítja. A pipeline feldolgozás legegyszerűbb esetében (pipeline dataflow) az elemek egyetlen számítási sorozattal adhatók meg. A számítások felváltva történnek, amikor a tokenek a bemeneten érkeznek. Az ilyen sémát adatvezérelt végrehajtásnak nevezik [3] .

Jellemzők

Az adatfolyam-programozásban bonyolultabb konfigurációk is használhatók, mint egy folyamat. A legegyszerűbb modellhez különösen a következő jellemzők adhatók (egyik vagy másik kombinációban) [3] :

Lásd még

Jegyzetek

  1. 1 2 Tiago Boldt Sousa Dataflow programozási koncepció, nyelvek és alkalmazások archiválva 2020. november 12-én a Wayback Machine -nél
  2. Jon Orwant. Számítástechnika és Perl-programozás: A Perl Journal legjobbjai. - O'Reilly Media, Incorporated, 2002. - P. 146. - 737 p. — ISBN 9780596003104 .
  3. 1 2 3 Carkci, 2014 , 2. Adatfolyam magyarázata.
  4. 12 Sharp , 1992 , p. 293.
  5. Az adatfolyam szereplőinek és alkalmazásának strukturált leírása [1] Archiválva : 2020. július 27. a Wayback Machine -nél
  6. Hewitt, Carl; püspök, Péter; Steiger, Richard. A Universal Modular Actor Formalism for Artificial Intelligence  (angolul)  : folyóirat. – IJCAI, 1973.

Irodalom

Linkek