大小:20.41M
更新时间:23-09-14
系统:Pc
函数式编程思维是一本编程语言思维指导书,由美国程序员Neal Ford编著。本书主要讲解了在各种编程语言中函数式编程的普及趋势和详细编程方法,说明使用函数式思维来编程开发的益处,并附以实例,让读者接受并了解这种全新的编程方法,最后再使用和掌握这种全新的更方便更易于记忆的编程方法,适合所有程序员和编程爱好者阅读。
《函数式编程思维》脱离特定的语言特性,关注各种OOP语言的共同实践做法,展示如何通过函数式语言解决问题。例如,如何利用函数式语言,通过高阶函数、多元方法等完成代码重用。知名软件架构师Neal Ford为我们展示不同的编程范式,帮我们完成从Java命令式编程人员,到使用Java、Clojure、Scala函数式编程人员的完美转变,建立对函数式语言的语法和语义的良好理解。
译者序 ix 前言 xi 第1 章 为什么 1 1.1 范式转变 2 1.2 跟上语言发展的潮流 4 1.3 把控制权让渡给语言/ 运行时 4 1.4 简洁 5 第2 章 转变思维 9 2.1 普通的例子 9 2.1.1 命令式解法 9 2.1.2 函数式解法 10 2.2 案例研究:完美数的分类问题 15 2.2.1 完美数分类的命令式解法 15 2.2.2 稍微向函数式靠拢的完美数分类解法 16 2.2.3 完美数分类的Java 8 实现 18 2.2.4 完美数分类的Functional Java 实现 19 2.3 具有普遍意义的基本构造单元 21 2.3.1 筛选 22 2.3.2 映射 23 2.3.3 折叠/ 化约 25 2.4 函数的同义异名问题 28 2.4.1 筛选 28 2.4.2 映射 31 2.4.3 折叠/ 化约 33 第3 章 权责让渡 37 3.1 迭代让位于高阶函数 37 3.2 闭包 38 3.3 柯里化和函数的部分施用 41 3.3.1 定义与辨析 41 3.3.2 Groovy 的情况 42 3.3.3 Clojure 的情况 44 3.3.4 Scala 的情况 44 3.3.5 一般用途 47 3.4 递归 48 3.5 Stream 和作业顺序重排 53 第4 章 用巧不用蛮 55 4.1 记忆 55 4.1.1 缓存 56 4.1.2 引入“记忆” 59 4.2 缓求值 65 4.2.1 Java 语言下的缓求值迭代子 65 4.2.2 使用Totally Lazy 框架的完美数分类实现 67 4.2.3 Groovy 语言的缓求值列表 69 4.2.4 构造缓求值列表 72 4.2.5 缓求值的好处 74 4.2.6 缓求值的字段初始化 76 第5 章 演化的语言 79 5.1 少量的数据结构搭配大量的操作 79 5.2 让语言去迎合问题 81 5.3 对分发机制的再思考 82 5.3.1 Groovy 对分发机制的改进82 5.3.2 “身段柔软”的Clojure 语言 83 5.3.3 Clojure 的多重方法和基于任意特征的多态 85 5.4 运算符重载 87 5.4.1 Groovy 87 5.4.2 Scala 89 5.5 函数式的数据结构 91 5.5.1 函数式的错误处理 91 5.5.2 Either 类 92 5.5.3 Option 类 100 5.5.4 Either 树和模式匹配 100 第6 章 模式与重用 107 6.1 函数式语言中的设计模式 107 6.2 函数级别的重用 108 6.2.1 Template Method 模式 109 6.2.2 Strategy 模式 111 6.2.3 Flyweight 模式和记忆 113 6.2.4 Factory 模式和柯里化 116 6.3 结构化重用和函数式重用的对比 117 第7 章 现实应用 125 7.1 Java 8 125 7.1.1 函数式接口 126 7.1.2 Optional 类型 128 7.1.3 Java 8 的stream 128 7.2 函数式的基础设施 129 7.2.1 架构 129 7.2.2 Web 框架 132 7.2.3 数据库 133 第8 章 多语言与多范式 135 8.1 函数式与元编程的结合 136 8.2 利用元编程在数据类型之间建立映射 137 8.3 多范式语言的后顾之忧 140 8.4 上下文型抽象与复合型抽象的对比 141 8.5 函数式金字塔 143 作者简介 147 封面介绍 147
应用信息
同类热门
热门标签
网友评论0人参与,0条评论
最新排行
红头文件word模板6K 红头文件word是一份主要用于各种政府办公场所的文件,而这类文件一般都是拥有严格要求和格式的,不过小编这里直接提供的该文件的word模板,已经精心为大家整理好了标题、主送机关、发文字号、正文、附件、成文日期等各内容的字体和位置的格式,能很好的帮助用
查看
openstack设计与实现41.66M英特尔开源技术中心pdf扫描版 openstack设计与实现是一本OpenStack必选必读经典,由英特尔开源技术中心编著。本书内容丰富翔实,以juno版本为基础,覆盖了openstack的学习到设计与实现等各个方面的内容,致力于帮助读者形成openstack及其各个主要组件与项
查看
html5秘籍第2版107.18Mpdf扫描版HTML5不仅仅是一种标记语言,它还指代多种独立的Web标准。但是如何才能学习html5的全部知识呢?小编推荐用户使用html5秘籍第2版,这是一本HTML5语言的学习指导书籍,由美国程序员Matthew MacDonald编著。本书内容丰富,由浅入深,
查看
docker入门实战1.38Mpdf完整版Docker是一个开源的应用容器引擎,它能够让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,最近有许多的想学docker技术的网友在找docker入门实战pdf,今天小编给大家找来了,此版本是pdf完整版的
查看
HTML+CSS网页开发技术精解61.4M吴玉中pdf扫描版 HTML+CSS网页开发技术精解是一本html和css语言的开发书籍,由吴玉中等人共同编著。本书内容丰富翔实,涵盖了HTML和CSS大部分常用元素和属性。并且作者使用典型实例,用图解方式诠释每个语法的具体使用方法。还全面讲解CSS控制页面表现的方法
查看
Java并发编程核心方法与框架32.82M高洪岩pdf扫描版 Java并发编程无处不在,服务器、数据库、应用,Java并发是永远不可跳过的沟坎,但如何才能更好的学习和快速上手呢?这里小编推荐大家阅读Java并发编程核心方法与框架,这是一本java开发编程核心方法与框架,由高洪岩编著。本书结合了资深Java专家
查看
head first ajax 中文版78.43Mpdf扫描版head first ajax 中文版是一本web Ajax框架详解,由美国程序员Rebecca M.Riordan编著。本书采用了重复手法写作,会用不同方式,采用不同类型的媒体,运用多种思维手段来介绍同一个东西,目的是让有关内容更容易储存在你的大脑中,
查看
hadoop实战第2版179.03Mpdf高清扫描版hadoop实战第2版是一本系统且极具实践指导意义的Hadoop工具书和参考书,作者陆嘉恒,已经扫描为pdf高清版电子图书,附带的福昕pdf阅读器可以完美打开浏览阅读。由于第1版广受好评,第2版基于hadoop及其相关技术最新版本撰写,从多角度做了全面的
查看
循序渐进oracle数据库管理优化与备份恢复72.28M盖国强pdf扫描版 循序渐进oracle,全称叫做循序渐进oracle数据库管理优化与备份恢复,是一本Oracle数据库入门书籍,由Oracle数据库专家盖国强编著,全书内容丰富翔实,继续贯彻了作者“由浅入深、由点到线再及面”的学习方法,作者在写作过程中一直遵循了这个
查看
2019劳动合同范本通用版13Kword免费通用版不管去哪里工作,劳动合同一定签才能保证双方的利益,但有些朋友并不清楚如何写合同,为此小编带来了2019劳动合同范本通用版,word格式,标准版,免费通用于全国各个省份,无论是国企还是私企都可以使用,详细介绍了工作内容和工作地点,工作时间和休息休假,劳动报
查看