响应式编程 函数式编程 简介

响应式编程:

关键字:RxJava,观察者模式,EventBus,广播

理念:一切为事件

发出A事件通知B执行,而不是B一直等待(阻塞),提高效率。

函数式编程:

关键字:lambda,lisp,大数据,AI

理念:

1.一切为函数

2.每个函数是可靠的,没有副作用的;不能依赖外部环境/上下文

3.每一个可靠小函数组合成大函数,再组成一个牛逼函数

优点:

1.适合并行计算,每个小函数分发给不同CPU。非常适合大数据,AI这类大运算。

缺点:

1.难懂,反人类。

2.耗内存

虽然函数式编程最近又火了起来,但是晦涩风格注定不能走得长远,语言只会越来越简单。这不是程序员越来越蠢,是为了避免在细节中挣扎,将精力放在其他方面,提高行业效率。(试试用汇编整个王者荣耀出来?)

原文地址:https://www.cnblogs.com/luojianjin/p/12562175.html

时间: 2024-10-03 12:15:44

响应式编程 函数式编程 简介的相关文章

Python 函数式编程、装饰器以及一些相关概念简介

Python 中的 Decorator(装饰器) 是对一个函数或者方法的封装,从而使其可以完成一些与自身功能无关的工作. 预备知识 一切皆对象 在 Python 中,所有的一切都被视为对象,任何的变量.函数.类等都是 object 的子类.因此除了变量之外,函数和类等也可以被指向和传递. >>> def foo(): ... pass ... >>> def Foo(): ... pass ... >>> v = foo >>> v

玩转 JavaScript 面试:何为函数式编程?

函数式编程在 JavaScript 领域着实已经成为一个热门话题.就在几年前,很多 JavaScript 程序员甚至都不知道啥是函数式编程,但是就在近三年里我看到过的每一个大型应用的代码库中都包含了函数式编程思想的大规模使用. 函数式编程(缩写为 FP)是一种通过组合纯函数来构建软件的过程,避免状态共享.可变数据及副作用的产生.函数式编程是一种声明式编程而不是指令式编程,应用的状态全部流经的是纯函数.与面向对象编程思想形成对比的是,其应用程序的状态通常都是与对象中的方法共享的. 函数式编程是一种

javascript 函数式编程

编程范式 编程范式是一个由思考问题以及实现问题愿景的工具组成的框架.很多现代语言都是聚范式(或者说多重范式): 他们支持很多不同的编程范式,比如面向对象,元程序设计,泛函,面向过程,等等. 函数式编程范式 函数式编程就像一辆氢燃料驱动的汽车——先进的未来派,但是还没有被广泛推广.与命令式编程相反,他由一系列语句组成,这些语句用于更新执行时的全局状态.函数式编程将计算转化作表达式求值.这些表达式全由纯数学函数组成,这些数学函数都是一流的(可以被当做一般值来运用和处理),并且没有副作用. 函数式编程

函数式编程 读书笔记

函数式编程 函数式编程思想:在思考问题时,使用不可变值和函数,函数对一个值进行处理,映射成另一个值. 已经掌握的使用场景: 1.      获取集合中的最大或最小值,当集合类型为自定义类型时的使用比较器 2.      循环进行一些操作.foreEach( ) 3.      统计符合条件的有多少个 List.stream().filter( 条件).count(); .map(  ) : 方法将一个流中的值转换成一个新的流 .filter(   ) :  方法将流进行过滤,保留符合条件的(返回

【Scala】Scala函数式编程初探

函数式编程 函数式编程是种编程典范,它将电脑运算视为函数的计算.函数编程语言最重要的基础是 λ 演算(lambda calculus).而且λ演算的函数可以接受函数当作输入(参数)和输出(返回值).和指令式编程相比,函数式编程强调函数的计算比指令的执行重要.和过程化编程相比,函数式编程里,函数的计算可随时调用. 命令式编程是面向计算机硬件的抽象,有变量(对应着存储单元),赋值语句(获取,存储指令),表达式(内存引用和算术运算)和控制语句(跳转指令),一句话,命令式程序就是一个冯诺依曼机的指令序列

傻瓜函数式编程

傻瓜函数式编程 FP 说明 转载,github.com/justinyhuang 2006年6月19日,星期一 开篇 我们这些码农做事都是很拖拉的.每天例行报到后,先来点咖啡,看看邮件还有RSS订阅的文章.然后翻翻新闻还有那些技术网站上的更新,再过一遍编程论坛口水区里那些无聊的论战.最后从头把这些再看一次以免错过什么精彩的内容.然后就可以吃午饭了.饭饱过后,回来盯着IDE发一会呆,再看看邮箱,再去搞杯咖啡.光阴似箭,可以回家了-- (在被众人鄙视之前)我唯一想说的是,在这些拖拉的日子里总会时不时

97. 在LotusScript中模拟函数式编程

本文将介绍96. 通用字段修改器用到的在LotusScript中模拟函数式编程的技巧. 函数式编程 函数式编程是一种优美而强大的编程范式.它源于Alonzo Church提出的λ演算(Lambda演算),而某个问题能表示成Lambda演算,按照Church–Turing论题,等价于该问题在数学上是可以有效计算的.粗略地说,用对应于Lambda演算的一门函数式程序语言可以写出任何理论上可计算问题的计算程序.因为与可计算理论的紧密关系和强大的表现力,函数式编程在学术界历来很受重视.但是在日常应用的软

Python3函数式编程小结

Python函数式编程 函数式编程可以使代码更加简洁,易于理解.Python提供的常见函数式编程方法如下: map(函数,可迭代式)映射函数 filter(函数,可迭代式)过滤函数 reduce(函数,可迭代式)规约函数 lambda函数 列表推导式 zip()函数 1列表推导式 #list(range(1,11)) 结果为[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] x = [item for item in range(1,8)] print(x) [1, 2, 3, 4,

函数式编程 vs 命令式编程

函数式编程 vs 命令式编程 函数式编程属于声明式编程(Declarative Programming),SQL就是典型的声明式编程. 函数式编程(Functional Programming) 关注行为 强调what,对应于数学里面的函数的对应法则. 像餐馆里吃饭,提出自己的要求即可 数学函数概念含有三个要素:定义域A.值域C和对应法则f.其中核心是对应法则f,它是函数关系的本质特征. 命令式编程(Imperative Programming) 关注数据 强调how,每一步都需要去做 像在家里