编程范式指某种编程语言典型的编程风格或者编程方式,常见的编程范式与它们之间的比较:
面向对象编程(OOP):把问题看作是由对象的属性和行为所组成,以类作为对象的模板,把类和继承作为构造机制,以对象为中心,来思考并解决问题, 三个基本概念:封装性、继承性、多态性
函数式编程:无状态、无副作用,不改变输入,不可变、无副作用、引用透明,利于小模块的整合。而OOP里子类会继承、改变父类的状态。
函数式编程一个例子:高阶函数 接受一个或者多个函数作为其入参(takes one or more functions as arguments) 返回值是一个函数 (returns a function as its result)