过程编程是基于过程调用的概念,从结构化编程中派生出来的一种编程范式。过程,也称为例程、子例程或函数,只是包含一系列要执行的计算步骤。任何给定的过程都可以在程序执行过程中的任何时刻调用,包括由其他过程或其本身调用。
结构化编程是一种编程范例,其目的是通过广泛使用选择(if/for/ use )和重复(同时和为)、块结构和子程序的结构化控制流结构来提高计算机程序的清晰度、质量和开发时间。
这两个定义是相似的。我找不到这两种定义的区别。
他们两人都有:
仅仅基于它们的区别就足够了:过程可以调用一个函数中的其他函数,包括它自己,而结构化只能从主函数调用一个函数吗?
这两种范式究竟有何区别?
发布于 2019-12-01 20:10:36
这两个术语涉及不同但相关的概念。
两者都试图通过增加程序结构之间的关注点分离、组件的划分、代码的组织来改进出租人编程范例。
我们还要注意,在维基百科的文章中,关于从结构化编程派生的过程编程的断言需要引用。正如@MartinMatt所说,这个术语通常用于与OOP相反,OOP有组织和抽象的附加结构。
结构化的意思是块结构,例如if-然后-else,while,for,等等。使用这些方法可以消除goto's和标签,使程序更易读,更容易出错。(命名标签是一项容易出错的杂务。)
过程编程意味着使用函数和过程来划分和命名操作,而不是重复代码行。
发布于 2019-12-02 09:38:55
简单地说,命令式编程可以是结构化的也可以是非结构化的。结构化编程可以是过程化的,也可以是面向对象的。
因此,过程是结构化的子集,这个术语通常用于与面向对象的对比。
Java将是一种结构化语言的示例,而不是过程语言(因为它是面向对象的)。
“结构化”和“非结构化”这两个术语不再被大量使用,因为在汇编程序之外,非结构化编程非常罕见。最老版本的BASIC和FORTRAN是非结构化的,但后来的版本得到了结构化编程的支持。
发布于 2019-12-01 18:52:55
程序这一术语常被用作面向对象的反术语。就像以前的事情一样,在我们有支持面向对象的语言之前。这是程序性的。
结构化是把代码搞得一团糟的反术语,也就是说,编程的方式使程序流变得模糊,逻辑难以理解。
您可以同时具有结构化和程序性。类中的方法中的代码可以是结构化的,也可以不是结构化的。
https://softwareengineering.stackexchange.com/questions/401885
复制相似问题