大小: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条评论
最新排行
精通django(django 1.8 lts全解)6.07Mpdf扫描版精通django(django 1.8 lts全解)是一本Django的入门指导书,由澳大利亚一名商务系统开发者Nigel George编著,本书采用由简到繁,循序渐进的方法,深入说明 Django 的机制,教你使用它构建 Web 应用。其次,适当讨论高
查看Oracle Database 11g RAC手册(第2版)46.88Mpdf扫描版 Oracle Database 11g RAC手册(第2版)是一本Oracle数据库的使用指导手册,由美国顶级数据库性能调优专家K Gopalakrishnan编著。本书内容丰富翔实,主要分为四部分,第1部分介绍了高可用性体系结构与集群,第2部分介
查看ASP.NET开发实例大全(基础卷)313.29Mpdf扫描版 ASP.NET开发实例大全(基础卷)是一本ASP.NET开发指导手册,由软件开发技术联盟编著。本书筛选、汇集了ASP.NET开发从基础知识到高级应用各个层面约600个实例及源代码,每个实例都按实例说明、关键技术、设计过程、详尽注释、秘笈心法的顺序进
查看sql server 2012从零开始学186.06M王英英pdf扫描版 sql server 2012从零开始学是一本SQL Server 2012数据库入门书籍,由王英英,张少军和刘增杰三人共同编著,本书内容几乎涉及了SQL Server 2012数据库应用与开发的所有重要知识,通过全书的学习,您可以完整地掌握SQL
查看深入react技术栈pdf9.18M陈屹高清扫描版 React就目前前端工程化最前沿的技术,如何才能更好的学习React呢?小编这里推荐用户阅读深入React技术栈,这是一本全面深入讲述React技术栈的原创图书,由阿里巴巴前端架构师陈屹编著。本书深入全面的讲述了React技术栈的发展历程和使用方法
查看java 8实战中文版11.05M厄马pdf扫描版Java 8实战是一本java8实战手册,由英国程序员厄马(Raoul-GabrielUrma)编著,陆明刚,劳佳 翻译。本书结构清晰、内容翔实,从实例入手,涵盖Java 8的主要新特性,包括Lambda表达式、方法引用、流、默认方法、Optional、
查看2017年水利水电工程管理与实务55.5Mpdf高清版 2017年水利水电工程管理与实务,又可以称之为2017年一建水利水电工程管理与实务教材电子版,pdf格式,高清,是根据2014年版一级建造师《专业工程管理与实用》(水利水电工程)科目考试大纲编写的,与一级建造师执业资格考试综合科目《建设工程经济》《
查看modern php 中文版28.02Mpdf高清扫描版 modern php 中文版是一本php语言学习指导书籍,也是目前初级PHP的进阶宝典,由美国前端程序员乔希·洛克哈特编著。全书通过实践让读者了解php的新特性,让读者学到更多关于应用架构、规划、数据库、安全、测试、调试和部署方面的新知识,使读者明
查看HP WEB JetAdmin 10.2参考手册7.39Mpdf版HP WEB JetAdmin 10.2参考手册pdf版电子书,它提供简单而详尽的方式,主动地管理网络周边设备,并为打印效率做最佳化。你可以将周边装置设定群组,甚至可以加上地图,让人了解每台机器的位置。如果您还不了解HP WEB JetAdmin或在使用
查看