编程范式是一种使用某种编程语言解决问题的方法,或者我们也可以说它是一种使用工具和技术解决问题的方法,我们可以按照某种方法来解决这个问题。有很多已知的编程语言,但所有这些语言在实施时都需要遵循一些策略,这种方法/策略就是范式。除了各种各样的编程语言外,还有很多范式来满足每一个需求。
必要性编程顾名思义是一种描述程序执行方式的编程范式。开发人员更关心如何一步一步地得到答案。它包括命令命令的顺序。在这其中,执行的顺序非常重要,并同时使用可变和不可变的数据。Fortran, Java, C, C++编程语言是命令式编程的例子。
声明式编程顾名思义是一种描述要执行的程序的编程范式。开发人员更关心收到的答案。它声明了我们想要什么样的结果,并把编程语言放在一边,只关注如何产生这些结果。简单地说,它主要关注的是最终结果。它表达了计算的逻辑。Miranda, Erlang, Haskell, Prolog是声明式编程的几个流行例子。
在对这两种语言有了基本的了解之后,现在让我们来讨论一下这两种不同类型的编程之间的主要区别。
强制性编程 | 声明式编程 |
---|---|
在这种编程中,程序指定如何做。 | 在这种情况下,程序指定要做什么。 |
它简单地描述了计算的控制流。 | 它简单地表达了计算的逻辑。 |
它的主要目标是描述如何得到它或完成它。 | 它的主要目标是描述期望的结果,而不直接说明如何得到它。 |
它的优点包括易于学习和阅读,概念模型简单易懂等。 | 它的优点包括有效的代码,可以通过使用方法来应用,容易扩展,抽象程度高等等。 |
它的类型包括程序性编程、面向对象编程、并行处理方法。 | 其类型包括逻辑编程和功能编程。 |
在这里面,允许用户对编译器做出决定和命令。 | 在这里面,允许编译器做出决定。 |
与声明式编程相比,它有许多副作用,并包括可改变的变量。 | 与命令式编程相比,它没有副作用,也不包括任何可变的变量。 |
它给了开发者充分的控制权,这在低级别的编程中是非常重要的。 | 它可以在简化代码结构的同时使重复的流程自动化。 |
在命令式编程中,程序员负责优化代码的性能。在声明式编程中,系统根据程序员指定的规则和约束来优化代码。 | |
在命令式编程中,变量可以是可变的。 | 在声明式编程中,变量通常是不可变的。 |
命令式编程和声明式编程的区别
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果。
转载请注明:文章转载自 有区别网 [http://www.vsdiffer.com]
本文标题:命令式编程和声明式编程的区别
本文链接:https://www.vsdiffer.com/vs/difference-between-imperative-and-declarative-programming.html
免责声明:以上内容仅代表 个人看法、理解、学习笔记、总结和研究收藏。不保证其正确性,因使用而带来的风险与本站无关!如本网站内容冒犯了您的权益,请联系站长,邮箱: ,我们核实并会尽快处理。