gpt4 book ai didi

javascript - 异步流程图。如何直观地表示异步逻辑

转载 作者:搜寻专家 更新时间:2023-11-01 00:24:37 24 4
gpt4 key购买 nike

是的,这有点矛盾。

是否有一种可视化语言来表示异步逻辑?像流程图一样简单的东西?

我想为 UI“屏幕”及其背后的逻辑建模。

谢谢!

最佳答案

有一种用于表示异步逻辑的“可视化语言”:Petri 网。

[Petri 的] 网络理论

Petri 网是根据网络元素对系统的描述。有四种类型的网络元素:放置、转换、输入和输出。输入将位置连接到转换。一个输出将一个转换连接到一个地方。每个网络元素可能有零个或多个注释。每个注释也可能有零个或多个注释。

类型注解

一个网络元素有一个类型:P (Place), T (Transition), I (Input), O (Output)

图标注释

一个位置元素可以用一个圆圈来直观地表示。过渡元素可以用正方形表示。输入元素可以由从圆到正方形的箭头表示。输出元素可以用从正方形到圆形的箭头表示。

标签注解

每个圆形或正方形都可能带有标签标识符,即用于唯一标识形状的文本。正方形的标签以正方形为中心。圆的标签在圆的外面。

模式和类

从一组现有的注释模式开始可能会很方便——例如放置/转换网(Petri 网的一类)中使用的注释类型。

  1. 每个地方都有一个标记——数量或从0开始的数字。
  2. 每个转换都有一个状态——真或假。
  3. 每个输入都有一个状态——真或假。
  4. 每个输入都有一个权重——一个从 1 开始的数量或数字。
  5. 每个输入都有一个状态更新规则/逻辑——如果输入位置的标记大于或等于输入的权重,则状态为真;否则,状态为假。
  6. 每个输入都有一个权重更新规则/逻辑——从输入位置的标记中减去输入权重。
  7. 每个输出都有一个权重——一个从 1 开始的数量或数字。
  8. 每个输出都有一个权重更新规则/逻辑——将输出权重添加到输出位置的标记。
  9. 每个转换都有一个状态更新规则/逻辑——如果每个输入的状态为真,则转换的状态为真;否则,状态为 false。
  10. 每个转换都有一个标记更新规则/逻辑——调用每个输入和每个输出的标记更新规则。

“扩展”

如果上面提供的注释类型不能满足应用程序的要求,则可以添加或更改注释。例如,

  1. 更改代表网络元素的形状。
  2. 修改更新规则/逻辑。
  3. 更改输入权重的范围并更改输入的状态更新规则——对于抑制网络,Petri 网的另一类,输入权重可以是从 0 开始的数字;状态更新规则有一个附加组件,如果输入权重为零,如果输入位置的标记为零,则状态为真,否则状态为假。
  4. 为每一个大于1或0的输入权重添加标签标注。
  5. 等等

关于javascript - 异步流程图。如何直观地表示异步逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26287859/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com