Skip to content

函数式编程

函数式编程是一种编程范式,它将程序视为数学函数对输入数据的评估从而产生输出的过程,强调使用纯函数、不可变数据、高阶函数和函数组合等概念。与命令式编程关注"怎么做"不同,函数式编程更关注"做什么",通过声明式的代码风格让程序的逻辑更加清晰和可预测。

其他概念

  • 高阶函数:以函数为参数或返回值的函数
  • 一元函数:只有一个参数和一个返回值的函数叫做一元函数
  • 纯函数:运行之后不产生副作用的函数,它具有与传入的参数一一对应的可预期的返回值,甚至更纯——不依赖于外界的变量。
  • 柯里化:将一个多元函数转化为一个返回可连续调用的一元函数
  • 组合:将多个函数转化为一个组合功能的函数。compose/pipeline,compose将函数从右至左调用,pipeline从左至右调用
  • Point-Free:函数组合。使用各个小功能的函数组合形成更大更复杂的一个函数,直到需要输入之前,我们不关心具体需要处理的数据。
  • 声明式:尽量只声明变量,而不是去修改已有的数据
  • 不可变:数据一但被创建就不应被改变,并且如果是一个复杂类型,那么其内部的属性也应该是不可变的。