大小: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条评论
最新排行
oracle weblogic server开发权威指南92.55M帕特里克 高清扫描版 oracle weblogic server开发权威指南是一本Oracle WebLogic Server开发者权威指导手册,由美国高级开发工程师帕特里克、布雷格曼和多恩编著。本书介绍了选择Java EEI应用程序体系结构的技巧全面讲解了多种设计方
查看
Apache Tomcat 6高级编程89.97M乔帕pdf扫描版Apache Tomcat 6高级编程是一本Apache Tomcat 6编著书籍,由乔帕(Chopra V.)编著,杨金奎等人翻译。本书重点讲解Tomcat 6的应用知识,介绍了新的架构和性能更改。从基本的Tomcat和Web应用程序配置到用于集群、J
查看
python基础教程第2版中文高清pdf版29.63M本次分享的是python基础教程第2版中文高清pdf版,由于是PDF格式,因此用户需要安装PDF阅读器才能正常阅读,好了让我们回到正题。这是一本包括Python程序最基本的设计操作教程,介绍了Python的基础知识和基础概念,包括了列表、元组、字符串、字
查看
Android高级进阶43.81MPDF顾浩鑫高清扫描版 Android高级进阶是由顾浩鑫所编写,作者实战经验非常的丰富,先后任职过华为、百度、平安科技,本书分为8个部分进行阐述,分别是基础篇、系统架构篇、经验总结篇、新技术篇、性能优化篇、移动安全篇、工具篇、测试篇。 内容十分丰富,书中通过简
查看
数据库系统实现第二版26.33M加西亚·莫利纳pdf扫描版 数据库系统实现第二版是一本数据库实现原理书籍,由美国程序员加西亚·莫利纳编著。本书内容深入且全面,技术实用且先进,叙述深入浅出,书中从数据库实现者的角度对数据库系统实现原理进行了深入阐述,并具体讨论了数据库管理系统的三个主要成分:存储管理器、查询处
查看
中国起名实用大全书籍电子版19.09M巨天中编著 中国起名实用大全是一本关于如何起名,改名的实用图书,作者巨天中,长征出版社发行。全书共三编,内容包括古人改名趣事、依据什么理论来取名改名、取名改名的策略、26种取名改名艺术方法、取名改名禁忌、企业名称设计策略等内容,可以帮助用户更好的起名以及改名,
查看
新一代SDN VMware NSX 网络原理与实践pdf61.07M范恂毅pdf扫描版 新一代SDN VMware NSX 网络原理与实践是一本全面剖析VMware NSX网络原理与实践的详细指南,由范恂毅和张晓和两人共同编著。本书内容丰富翔实,全面介绍了VMware NSX的相关知识,还从自身的经验和体会出发,阐述了NSX与其他技术
查看