数据流和控制流的区别是什么

电子说

1.2w人已加入

描述

  数据流——描述程序运行过程中数据的流转方式及其行为状态。在MVC模型中,Model层的本质就是“数据”,数据在MVC的各个构成要素中流转并且在不同的层次扮演着不同的角色。当程序运行起来之后,我们会发现正是由于数据的流转,才使得原本孤立和静态的元素形成了互动。因此,我们可以得出结论——真正贯穿MVC框架并且将MVC的各个模块黏合在一起的是数据。数据作为黏合剂,构成了模块与模块间的互动载体,把MVC真正融合在了一起。

  因此我们可以看到在MVC模型中,Model层实际上是一个动态元素,它作为数据载体流转于程序之间,并在不同的程序模块中表现出不同的行为状态,这就是形成数据流的本质。

  控制流——控制程序逻辑执行的先后顺序,控制流实际上是数据流融入控制层之后形成的逻辑处理和程序跳转的结果。控制流之所以能够称为控制流,完全是因为它所控制的对象是数据,数据在逻辑处理过程中的形式和状态的变化,一定程度上促成了控制层的逻辑处理和程序跳转的结果。

  控制层的核心职责是处理业务逻辑,这一结论直接为开发框架指明了目标: 控制层应该更加关注其核心的职责,而其他的辅助逻辑则由框架帮忙来实现。 为了完成这一目标,以XWork为首的开发框架就开始对位于控制层的这四段代码进行规划。 因为我们发现,只有对业务逻辑的处理是我们在控制层所关心的核心内容。 而除此之外的代码,则应该通过合理的设计,转化为一个标准而规范的事件处理流程。

  两者的区别是数据流是在控制流上的数据操作表示,只有在控制流上进行的数据流分析才是有价值的。

  数据流最初是通信领域使用的概念,代表传输中所使用的信息的数字编码信号序列。控制流是按一定的顺序排列程序元素来决定程序执行的顺序。Visual BASIC、C和其他编程语言也继承了控制流,语句按照出现在程序中的顺序执行。LabVIEW 使用顺序结构实现数据流框架中的控制流。顺序结构是一系列顺序执行的有序帧集合。顺序结构顺序执行帧0,然后是帧1、帧2,直到最后一个帧。只有最后一个帧执行完毕,数据才会离开结构。共有两种风格的顺序结构:单层顺序结构和叠层顺序结构。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分