函数式编程思想 英文PDF电子书下载
- 电子书积分:9 积分如何计算积分?
- 作 者:(美)弗德著
- 出 版 社:南京:东南大学出版社
- 出版年份:2015
- ISBN:9787564153885
- 页数:168 页
1.Why 1
Shifting Paradigms 2
Aligning with Language Trends 4
Ceding Control to the Language/Runtime 4
Concision 5
2.Shift 11
A Common Example 11
Imperative Processing 11
Functional Processing 12
Case Study:Number Classification 17
Imperative Number Classification 17
Slightly More Functional Number Classification 19
Java 8 Number Classifier 21
Functional Java Number Classifier 22
Common Building Blocks 24
Filter 24
Map 25
Fold/Reduce 29
Synonym Suffering 31
Filter 31
Map 34
Fold/Reduce 36
3.Cede 39
Iteration to Higher-Order Functions 39
Closures 40
Currying and Partial Application 44
Definitions and Distinctions 44
In Groovy 45
In Clojure 47
Scala 47
Common Uses 51
Recursion 52
Seeing Lists Differently 52
Streams and Work Reordering 56
4.Smarter,Not Harder 59
Memoization 59
Caching 60
Adding Memoization 63
Laziness 70
Lazy Iterator in Java 70
Totally Lazy Number Classifier 72
Lazy Lists in Groovy 74
Building a Lazy List 77
Benefits of Laziness 80
Lazy Field Initialization 82
5.Evolve 83
Few Data Structures,Many Operations 83
Bending the Language Toward the Problem 85
Rethinking Dispatch 86
Improving Dispatch with Groovy 86
Clojure's"Bendable"Language 87
Clojure Multimethods and a la carte Polymorphism 89
Operator Overloading 91
Groovy 91
Scala 93
Functional Data Structures 95
Functional Error Handling 96
The Either Class 97
The Option Class 105
Either Trees and Pattern Matching 106
6.Advance 113
Design Patterns in Functional Languages 113
Function-Level Reuse 114
Template Method 116
Strategy 118
The Flyweight Design Pattern and Memoization 119
Factory and Currying 122
Structural Versus Functional Reuse 124
Code Reuse Via Structure 124
7.Practical Thinking 133
Java 8 133
Functional Interfaces 135
Optional 136
Java 8 Streams 136
Functional Infrastructure 137
Architecture 137
Web Frameworks 141
Databases 142
8.Polyglot and Polyparadigm 145
Combining Functional with Metaprogramming 146
Mapping Data Types with Metaprogramming 147
Infinite Streams with Functional Java and Groovy 148
Consequences of Multiparadigm Languages 150
Context Versus Composition 151
Functional Pyramid 154
Index 159
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《先秦政治思想史》梁启超著 2019
- 《《鬼谷子》思想新解 上》林仁政著 2015
- 《刘泽华全集 先秦政治思想史 下》刘泽华著;南开大学历史学院编 2019
- 《龙影 西方世界中国观念的思想渊源 增补版》何辉著 2019
- 《批判 建构与实践 戴维·佩珀生态社会主义思想研究》梅丽著 2019
- 《中国共产党思想通史 第2卷》李曙新 2014
- 《全国职业院校工业机器人技术专业规划教材 工业机器人现场编程》(中国)项万明 2019
- 《中国共产党思想通史 第7卷》张静如总主编 2014
- 《澳大利亚汉学家李瑞智之研究 中华传统思想文化的当代价值》李书仓 2018