【问题标题】:Nested Functions Visual representation ("flowcharts") [closed]嵌套函数视觉表示(“流程图”)[关闭]
【发布时间】:2014-05-30 12:55:10
【问题描述】:

必须对 C 代码进行一些可视化表示。里面有一些嵌套函数和一两个回调函数。

如何才能最好地展示功能?控制符号有帮助吗?

例如

fooA(){
 fooB();
 fooC();
}

当我做A --> B --> C 时感觉不对。

A --> B --> A --> C 更错误。

也许

A --> B
  -----> C

但是当我向 fooB() 添加另一个函数时,它变得一团糟......

fooB{
 fooD();
}

A --> B --> D --> C 没抓住重点……

目前最好的方法似乎是以二维方式进行。但它并不美丽。

【问题讨论】:

    标签: c uml modeling flowchart


    【解决方案1】:

    我不完全明白这一点(漂亮吗?),但如果你想在 UML 中显示它(它是如此标记),你必须有基本选项:activities 和 序列图。

    【讨论】:

      【解决方案2】:

      如果您必须创建代码的可视化表示,那么某些 ASCII 文本艺术可能不是您所期望的。这种技术已经脱离主流大约 10 年或更长时间了。

      查看以下链接以获得灵感:

      (如@Aleks 建议的那样,或在 Google 上搜索flow chartUML sequence diagramUML activity diagram图片

      【讨论】:

        【解决方案3】:

        我不知道这是一个编程问题,但我通常用树来表示这样的事情。

        对于你上面的例子,我有

        fooA
         |--->fooB
         |     |--->fooD
         |--->fooC
        

        当然,答案还取决于您要展示的内容是什么?因为 fooD 也可能调用 fooC,这对您来说可能会或可能不会变得混乱:

        fooA
         |--->fooB
         |     |--->fooD
         |           |--->fooC
         |--->fooC
        

        您现在在树中列出了两次 fooC,但您也清楚地区分了 fooD 调用的 fooC 和 fooA 调用的 fooC。

        您还需要警惕递归。如果 fooB 可以调用 fooA 呢?

        fooA
         |--->fooB
         |     |--->fooA
         |     |--->fooD
         |           |--->fooC
         |--->fooC
        

        【讨论】:

          猜你喜欢
          • 2020-10-12
          • 2020-09-06
          • 1970-01-01
          • 2011-09-29
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多