美文网首页
什么是函数式编程

什么是函数式编程

作者: good__day | 来源:发表于2021-02-22 11:55 被阅读0次

一、以函数式编程思想实现的库lambda、underscore?

https://underscorejs.org/

二、函数式编程是什么?

函数式编程是一种编程范式。js 中使用的编程范式还有命令式、依赖原型链的面向对象的范式、以及元编程。

函数式编程:不直接操作变量,对一系列逻辑抽象成函数,再对函数进行组合,完成系统开发。

三、函数式编程的特点?

函数是一等公民。指的是函数与其他数据类型一样,处于平等地位,可以赋值给其他变量,也可以作为参数,传入另一个函数,或者作为别的函数的返回值

只用"表达式",不用"语句"。"表达式"(expression)是一个单纯的运算过程,总是有返回值;"语句"(statement)是执行某种操作,没有返回值

没有"副作用"指的是函数内部与外部互动(最典型的情况,就是修改全局变量的值),产生运算以外的其他结果。函数式编程强调没有"副作用",意味着函数要保持独立,所有功能就是返回一个新的值,没有其他行为,尤其是不得修改外部变量的值。

不修改状态。

引用透明引用透明(Referential transparency),指的是函数的运行不依赖于外部变量或"状态",只依赖于输入的参数,任何时候只要参数相同,引用函数所得到的返回值总是相同的。

四、函数式编程的好处?

代码简洁,开发快速。通用性复用性更高,维护性更好,作用域局限,副作用少。

更方便的代码管理。函数式编程不依赖、也不会改变外界的状态,只要给定输入参数,返回的结果必定相同。因此,每一个函数都可以被看做独立单元,很有利于进行单元测试(unit testing)和除错(debugging),以及模块化组合。

接近自然语言,易于理解。

易于"并发编程"。

五、常见的函数式编程的场景

闭包、偏函数、柯里化、compose、链式调用、高阶函数

六、参考

http://taobaofed.org/blog/2017/03/16/javascript-functional-programing/

相关文章

  • 函数式编程(一)—— 前置知识

    为什么要学函数式编程? 什么是函数式编程?函数式编程和面向对象编程的不同对于函数式编程思维方式的理解: 函数式编程...

  • Python中的函数式编程

    函数式编程 说到函数式编程,我们的重点在于为什么要采用函数式编程,而不是什么是函数式编程。 函数式编程的优点:一、...

  • 了解C# 函数式编程

    什么是函数式编程 函数式编程是一种编程范式,维基百科对函数式编程定义如下: 函数式编程(英语:functional...

  • JavaScript函数式编程学习笔记

    函数式编程 1. 什么是函数式编程 函数式编程(英语:functional programming)或称函数程序设...

  • Python-函数式编程

    函数式编程简介 一、什么是函数式编程? 函数:function函数式:functional,是一种编程范式 二、函...

  • JavaScript中的函数式编程

    JS 函数式编程指南 什么是函数式编程 简单说,"函数式编程"是一种"编程模型"(programming para...

  • 函数式编程

    什么是函数式编程? 函数式:functional 一种编程范式 函数式编程特点 把计算视为函数而非指令 纯函数式编...

  • 函数式编程

    1 文章目标 为什么要学习函数式编程以及什么是函数式编程 函数式编程的特性(纯函数、柯里化、函数组合等) 函数式编...

  • 函数式web框架 webflux

    spring bootwebflux 什么是函数式 函数式编程是种编程方式,它将...

  • javascript 函数式编程

    1.函数式编程是什么 为什么要函数式编程 我眼中的 JavaScript 函数式编程 2.什么是函数组合 征服 J...

网友评论

      本文标题:什么是函数式编程

      本文链接:https://www.haomeiwen.com/subject/emisqctx.html