书籍详情
《函数式编程思维尼尔·福特计算机与互联网书籍》[31M]百度网盘|亲测有效|pdf下载
  • 函数式编程思维尼尔·福特计算机与互联网书籍

  • 出版社:青草书店专营店
  • 出版时间:2014-04
  • 热度:11602
  • 上架时间:2024-06-30 09:38:03
  • 价格:0.0
书籍下载
书籍预览
免责声明

本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正

内容介绍

  商品基本信息,请以下列介绍为准
商品名称:函数式编程思维
作者:[美]尼尔·福特
定价:49.0
出版社:人民邮电出版社
出版日期:14-04-01
ISBN:9787115400413
印次:
版次:1版1次
装帧:
开本:小16开

  内容简介
本书脱离特定的语言特性,关注各种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 Temte 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

  
Java等现代编程语言中出现了越来越多的函数式特性,跟随这本书,去了解语法表象之下真正需要掌握的新思维。中可以从知名软件架构师Neal Ford的演示中,体会到函数式编程思想是怎样通过改换视角,让我们站在了另一个抽象层次上,把编程问题看得更加清晰。
本书每一章都会给出各种函数式编程思维的示例,并用Java 8或其他具备函数式能力的JVM语言代码实现出来。改变你的思维是本书的愿望,至少读完本书的时候,你会对各种函数式概念有一个良好的把握。
具体说来,本书将——
解释为什么众多命令式语言都在增加函数式能力
通过普通的编程问题来比较函数式和命令式的解答方案
考察将例行杂务委托给运行时的各种方式
学忆和缓求值特性来取代手工编写的方案
探讨在函数式语境下的设计模式和代码重用
分别在Java 8、函数式架构和Web框架下检验函数式思维在真实案例中的表现
分析生活在一个范式更丰富多彩的世界里的优缺点 

  媒体
Java等现代编程语言中出现了越来越多的函数式特性,跟随这本书,去了解语法表象之下真正需要掌握的新思维。中高级可以从知名软件架构师Neal Ford的演示中,体会到函数式编程思想是怎样通过改换视角,让我们站在了另一个抽象层次上,把编程问题看得更加清晰。 本书每一章都会给出各种函数式编程思维的示例,并用Java 8或其他具备函数式能力的JVM语言代码实现出来。改变你的思维是本书的愿望,至少读完本书的时候,你会对各种函数式概念有一个良好的把握。 具体说来,本书将一一 解释
为什么众多命令式语言都在增加函数式能力 通过普通的编程问题来比较函数式和命令式的解答方案 考察将例行杂务委托给运行时的各种方式 学忆和缓求值特性来取代手工编写的方案 探讨在函数式语境下的设计模式和代码重用 分别在Java 8、函数式架构和Web框架下检验函数式思维在真实案例中的表现 分析生活在一个范式更丰富多彩的世界里的优缺点 专业:“这是一本重要的书,而说到写这本书,没有人比Neal更合适了。” ——Venkat Subramaniam Agile Developer公裁

  作者简介
Neal Ford在跨国IT咨询公司ThoughtWorks担监、软件架构师和文化基因传播人。他精通各种编程语言,主要的咨询业务是大规模企业应用的设计、构建和工程实践。他还是一位的讲师,登上过全世界各种会议的讲台。