用 JavaScript 进行函数式编程 fpEs
- 授权协议: MIT
- 开发语言: JavaScript
- 操作系统: 跨平台
- 软件首页: https://github.com/TeaEntityLab/fpEs
- 软件文档: https://github.com/TeaEntityLab/fpEs/blob/master/README.md
- 官方下载: https://github.com/TeaEntityLab/fpEs/releases
软件介绍
fpEs 是一个 JavaScript 库,可让你使用 EcmaScript(Javascript) 进行函数式编程。
作者表示,之所以开发这个项目是因为自己需要使用 Optional & Rx-like & PubSub 这些功能的一些特性,如果同时引入它们,项目又会变得很重。因此他的这个实现只包含核心功能,并且使用起来更加清晰。
用法
引入整个库
import fpEs from 'fpEs';
该库包含了 5 个模块,可以单独引用它们:
Facades:
maybe
monadio
publisher
FP functions:
fp
pattern
只需引用你需要的东西:
import Maybe from "fpEs"; // or this one: /* import Maybe from "fpEs/maybe"; */ var m = Maybe.just(1); // It works
or
import {
compose, curry,
} from "fpEs";or
import {
compose, curry,
} from "fpEs/fp";Common FP (Compose, Curry)
import {
compose, curry,
} from "fpEs/fp";
// compose
console.log(compose((x)=>x-8, (x)=>x+10, (x)=>x*10)(4)) // 42
console.log(compose((x)=>x+2, (x,y)=>x*y)(4,10)) // 42
// curry
console.log(curry((x, y, z) => x + y + z)(1,2,3)) // 6
console.log(curry((x, y, z) => x + y + z)(1)(2,3)) // 6
console.log(curry((x, y, z) => x + y + z)(1,2)(3)) // 6
console.log(curry((x, y, z) => x + y + z)(1)(2)(3)) // 6
Java高并发编程详解
汪文君 / 机械工业出版社 / 2018-6 / 89.00元
本书共分为四个部分:部分详细地介绍了Java多线程的基本用法和各个API的使用,并且着重介绍了线程与Java虚拟机内存之间的关系。第二部分由线程上下文类加载器方法引入,介绍为什么在线程中要有上下文类加载器的方法函数,从而掌握类在JVM的加载和初始化的整个过程。第三部分主要围绕着volatile关键字展开,在该部分中我们将会了解到现代CPU的架构以及Java的内存模型(JMM)。后一部分,主要站在架......一起来看看 《Java高并发编程详解》 这本书的介绍吧!
