scala之函数式编程根本概念-纯函数

什么是纯函数

纯函数是函数式编程中的一个根本概念. 纯函数要求一个函数输入对应输出, 没有其它任何副作用, 且引用透明.

过程: 没有返回值, 只有副作用的函数

一个纯函数有以下要求:

  1. 没有副作用
    • 不向控制台打印
    • 不向文件写入数据
    • 不更改外部变量
    • 不向其它文件系统写入数据
  2. 引用透明
    • 这个函数执行结果, 只与参数有关

纯函数的好处

  • 不用考虑线程安全
  • 可以通过缓存技术, 提升计算效率(避免反复计算, 参数一样返回值一样)

参考

https://www.jianshu.com/p/bd72ce534c07