这种范式被称为
Dataflow Programming
,它处理从一条指令传递到另一条要处理的指令的数据流。
数据流程序可以以文本或可视形式编程,除了您提到的软件之外,还有许多程序包含某种数据流语言。
要创建自己的数据流语言,您必须:
-
创建表示处理节点的程序模块或对象,以实现不同类型的数据处理。处理节点通常有一个或多个数据输入和一个或多个数据输出,并在其中实现一些数据处理算法。节点还可以具有控制给定节点如何处理数据的控制输入。典型的数据流算法从一个或多个输入数据流值计算输出数据样本,例如
FIR filters
做然而,处理算法也可以有数据值反馈(输出值以某种方式与输入值混合),如
IIR filters
,或以某种方式累积值以计算输出值
-
创建用于在处理节点之间传递数据的标准API。对于不同类型的数据和控制信号,它可能会有所不同,但它必须是标准的,因为处理节点应该相互“理解”。数据通常作为普通值传递。控制信号可以是普通值、事件或更高级的控制语言,具体取决于您的需要。
-
创建排列以链接节点并在节点之间传递数据。您可以创建自己的程序机器或使用一些标准的东西,如
pipes
,则,
message queues
,等等。例如,此功能可以实现为树状结构,其节点是您的处理节点,并具有对下一个节点的引用及其相应的输入,以处理来自当前节点输出的数据。
-
创建某种类型的节点迭代器,该迭代器从数据流图的开头开始,并在每个处理节点上进行迭代,其中:
-
提供下一个数据输入值
-
调用节点数据处理方法
-
更新数据输出值
-
将更新的数据输出值传递给下游处理节点的输入
-
创建用于配置节点参数及其之间链接的工具。它可以是使用文本编辑器编辑的简单文本文件,也可以是使用
GUI
绘制数据流图。
关于您的注释
Sort
模块输入
Alteryx
-也许数据值只是在这个模块中累积,然后进行排序。
here
您可以找到更详细的描述
Dataflow
编程语言。