我已经阅读了一些关于所有主题的文章,但我不太明白其中的区别。
最佳答案
结构化编程是一个古老的术语,我认为它包括函数式、过程式和其他许多方面。它基本上意味着使用明确的控制流结构,而不是直接从指令跳到指令。
从这个意义上说,函数式编程和过程式编程都是结构化范式。函数式编程也是声明式编程——赋予代码的结构与其含义相对应——程序是改变世界状态的函数。过程编程是您在任何 C 语言或其后代(包括 Java 和 C++ 等 OO 语言)中认为的“典型”编程。程序是一系列指令,要串行执行,并在此过程中调用子过程。
或者,正如著名的描述:
Functional programming is like describing your problem to a mathematician. Imperative programming is like giving instructions to an idiot.
--- arcus, #scheme on Freenode
关于functional-programming - 函数式、结构化和过程式编程之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4399841/