到底什么是函数式编程思维

如题所述

  “简单说,"函数式编程"是一种"编程范式"(programming paradigm),也就是如何编写程序的方法论。”

  摘自 阮一峰先生的文章:《函数式编程初探》


  就我个人理解,函数式编程是介于面向对象与面向过程的,中间性编程方法,具体且更为严谨的介绍,请百度“函数式编程初探”。

  函数式编程要求大量的使用函数来代替变量,形成富有逻辑且简洁易用的代码,极端的FP和极端的OOP已经在编程界引起一定反思(FP到最后,就会导致逻辑紊乱,而OOP到最后,会导致维护的艰难)。

  在这里附上函数式编程的特点(在“函数式编程初探”中,有部分条目的具体解释):

      第一等公民是函数

      带有闭包的Lambdas/Anonymous函数

      不变性,大部分无态处理,没有状态和变量

      高并发

      无副作用的调用

      通过tail call实现递归的性能优化。

      模式匹配(Haskell, Erlang)

      懒赋值(Miranda, Haskell)

      Homoiconicity(类似LISP)

温馨提示:答案为网友推荐,仅供参考
相似回答