Functional programming 图解程序
我倾向于视觉思维。因此,如果我能想象通过一个程序的数据流,我就能更好地理解其中发生的事情,而不是阅读一篇关于正在发生的事情的文本故事(伪代码) 有没有一种方法可以直观地表示变量和对象通过函数流动和被函数改变的方式?最好是在小范围内工作的东西,在单个函数内部和整个程序的更大范围内Functional programming 图解程序,functional-programming,diagram,Functional Programming,Diagram,我倾向于视觉思维。因此,如果我能想象通过一个程序的数据流,我就能更好地理解其中发生的事情,而不是阅读一篇关于正在发生的事情的文本故事(伪代码) 有没有一种方法可以直观地表示变量和对象通过函数流动和被函数改变的方式?最好是在小范围内工作的东西,在单个函数内部和整个程序的更大范围内 例如,用来教句子图表的英语课。电气工程师有电路图。在计算机科学中有没有类似的东西?我也倾向于视觉思考者。通常,当我试图完成一个项目,或者在代码中找不到错误时,我会将其带回框图 对于大型程序来说,这可能会变得很混乱,但您可
例如,用来教句子图表的英语课。电气工程师有电路图。在计算机科学中有没有类似的东西?我也倾向于视觉思考者。通常,当我试图完成一个项目,或者在代码中找不到错误时,我会将其带回框图
对于大型程序来说,这可能会变得很混乱,但您可以在图表中“漫游”一段数据,看看会发生什么。我是haskeller,所以我要说的是纯函数式编程。我想到的第一件事是。这些可以用来描述功能和结构如何相互作用;然而,它们更倾向于定义不变量/规律,而不是行为 在考虑lambda演算(或基于lambda演算的更高级语言)的计算时,另一件有用的事情是表达式图,如中所用。它们可以让你看到你表达的结构,包括分享。当然,这只有在代码是纯的情况下才有意义,也就是说,没有突变发生
第三种图有助于可视化数据如何通过函数,它是不同类型的数据流图,如用于(也可用于正常函数,因为
(>)
是箭头)或SICP的数据流图。这些说明了各个功能是如何“连接在一起”的。关于这一点的另一个观点是用于绘制流处理/管道和过滤器样式的图表,例如,它更侧重于时间的概念(与箭头图表相反,它确实表示单个值)。有一些自动化解决方案。这两个都显示了在计算的每一步计算机内存中的内容
Python具有完全在线的功能
有关Haskell,请参见。这个需要安装
提到了UML图,所以我将拿起手套。
已经存在了相当一段时间,是软件开发社区中公认的工具,易于使用和理解
我将提到我最常使用的两个图表: