编程分为几种 求解……元编程,泛型编程,函数式编程,面向对象编程,面相过程编程,模板编程等等的关系是什么?
求解……元编程,泛型编程,函数式编程,面向对象编程,面相过程编程,模板编程等等的关系是什么?
元编程:是指对元数据(可以是自己的或其他程序)的一种操作,以完成本应在编译时完成的部分工作,从而达到更高的工作效率。简而言之,就是“编程”。
通用编程:通过一种方式实现一个通用的标准容器库,使标准容器库可以在各种类型中重复使用,类似于模板。
函数式编程:是一种以计算机操作为函数的编程,可以将函数作为输入和输出来控制程序的行为。λ演算是这门语言最重要的基础。
面向对象编程:一种将现实世界映射到计算机模型的面向对象编程方法。程序是各种操作的对象。
面向过程编程:一种以过程为中心的编程思想,它将程序分解为一个逐步操作数据的过程。
模板编程:一种元编程技术,其中编译器使用模板生成临时源代码,然后将其与其余代码混合并编译。这些模板的输出包括编译时常量、数据结构和完整的函数。
函数式编程有什么弊端?
无论是面向对象编程还是函数式编程,如果走极端,都是错误的。面向对象编程的极端是一切都是面向对象的(纯面向对象)。函数式编程的极限是纯函数式编程语言。
面向对象编程的问题
面向对象的问题是它对“对象”的定义,它试图将所有东西都纳入这个概念中。当这种方法是极端的时候,你会想到一切都是对象。
但是这个想法是错误的,因为有些东西不是物体。函数不是对象。
函数式编程(Functional Programming)相比面向对象编程(Object-oriented Programming)有哪些优缺点?
面向对象特别符合人类认识世界的思维方式。OOP的兴起源于大规模软件系统开发中对代码管理、重用和扩展的需求。OOP为代码结构的合理性提供了更多的设计可能性和空间。面向对象的三个特性,封装、继承和多态,都是表面的特性。OOP的真正灵魂是抽象。这个概念贯穿于OOP语言的各个层次和开发的各个环节。只有深刻理解抽象,才能深刻理解OOP,充分发挥其优势。
函数式编程是一个非常古老的东西,这就是为什么它今天可以重用的原因。由于数据量的激增和硬件的高速发展,需要多核处理。functional最重要的特性是无状态的,它没有变量,因此它本身是线程安全的,这决定了它特别适合于高并发、大数据量的处理。
Face object和function都是从语言特性方面支持的编程思想,它们并不矛盾或对立。因此,我们可以利用他们的优势来发展。这也是开发语言未来发展的一个方向,即支持人脸对象和函数表达式的多范式编程。现在最典型的代表是Scala。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。