函数式编程概念一句话解释

1.函数重载

可以声明多个类、函数,但是参数列表不同。根据参数,去调用响应的类、函数。 这样有个好处,逻辑层面不需要对参数进行 if/else 判断。

2.高阶函数(Higher-order function)

就是参数为函数或返回值为函数的函数。有了高阶函数,就可以将复用的粒度降低到函数级别,相对于面向对象语言,复用的粒度更低。

3.偏应用函数(Partially Applied Functions)

一个函数接收一个有多个参数的函数,返回一个需要较少参数的函数。偏函数将一到多个参数在内部固定,然后返回新函数,返回的函数接收剩余的参数完成函数的应用。

4. 柯里化(Currying)

输入一个有多个参数的函数, 返回一个只接收单个参数的函数。

5.闭包(Closure)

闭包就是有权访问另一个函数作用域中变量的函数。 闭包的三个特性:

  1. 闭包是定义在函数中的函数 。

  2. 闭包能访问包含函数的变量。

  3. 即使包含函数执行完了, 被闭包引用的变量也得不到释放。

Mark24

Everything can Mix.