Dataflow

Dataflow is a term used in computing, and may have various shades of meaning.
Dataflow is a software architecture based on the idea that changing the value of a variable should automatically force recalculation of the values of other variables. Spreadsheets are perhaps the most widespread embodiment of dataflow. For example, in a spreadsheet you can specify a cell formula which depends on other cells; then when any of those cells is updated the first cell's value is automatically recalculated. It's possible for one change to initiate a whole sequence of changes, if one cell depends on another cell which depends on yet another cell, and so on. The dataflow technique is not restricted to recalculating numeric values, as is done in spreadsheets. For example, dataflow might be used to redraw a picture in response to mouse movements. Or it might be used to make robot turn in response to a change in light level. One benefit of dataflow is that it can reduce the amount of coupling in a program. For example, without dataflow, if a variable X depends on a variable Y then whenever Y is changed X must be explicitly recalculated. This means that Y is coupled to X. Since X is also coupled to Y (because X's value depends on the Y's value, the program ends up with a cyclic dependency between the two variables). Most good programmers will get rid of this cycle by using an observer pattern, but only at the cost of introducing a non-trivial amount of code. Dataflow improves this situation by making the recalculation of X automatic, thereby eliminating the coupling between from Y to X. Dataflow makes implicit a significant amount of code that otherwise would have had to be tediously explicit. Dataflow is also sometimes referred to as Reactive Programming. There have been a few programming languages created specifically to support dataflow. In particular, many (if not most) visual programming languages have been based on the idea of dataflow.
The term dataflow may also be used to refer to the flow of data within a system, and is the name normally given to the arrows in a data flow diagram that represent the flow of data between external entities, processes, and data stores.

 

<< PreviousWord BrowserNext >>
cyril radcliffe
the second coming of steve jobs
edwin a. stevens
office of scientific intelligence
george bancroft (actor)
rubery
hargeisa
ashley soan
william tite
brendan bracken
ruth krauss
lincoln, maine
baltimore school for the arts
sdkfz 251
gavdos
tsubame
backlot
elbert d. thomas
ian kennedy martin
joshua redman
herbie nichols
wallace f. bennett
vestur barastrandarssla
cabo da roca
norur ingeyjarssla
vestur skaftafellsssla
suur mlassla
the chamber
punta de tarifa
art bergmann
alex borstein
cape nordkinn
gahan wilson
johann georg palitzsch
barsneshorn
thomas kuchel
bjargtangar
hraunhafnartangi
launceston airport
ktlutangi
lotte world
cap de creus
punta de estaca de bares
violet carson