新書推薦:

《
四海之内:中国历史四十讲
》
售價:HK$
97.9

《
万亿低空:技术核心篇 低空经济
》
售價:HK$
107.8

《
逃离邪恶(中译本首-次出版 普利策奖得主厄内斯特·贝克尔遗作 《拒斥死亡》姊妹篇)
》
售價:HK$
107.8

《
萤火虫全球史072:图说中世纪医学简史
》
售價:HK$
82.5

《
汉字中国:承载三千年中华文化的瑰宝
》
售價:HK$
42.9

《
自我救赎:战胜复杂性创伤的行动指南
》
售價:HK$
64.9

《
罗马和平新版 古代地中海世界的暴力 征服与和平 汗青堂丛书109
》
售價:HK$
116.6

《
万亿低空:应用实战篇 低空经济
》
售價:HK$
107.8
|
| 內容簡介: |
|
如果你想得益于Java以及其他编程语言的函数式编程特性,那么这本深入的指导书将是你需要的。软件架构师Neal Ford就职于ThoughtWorks,是一名软件构架师,职称为Meme Wrangler。ThoughtWorks是一家全球化IT资讯公司,提供end-to-end软件开发和交付。
|
| 目錄:
|
Preface
1. Why
Shifting Paradigms
Aligning with Language Trends
Ceding Control to the LanguageRuntime
Concision
2. Shift
A Common Example
Imperative Processing
Functional Processing
Case Study: Number Classification
Imperative Number Classification
Slightly More Functional Number Classification
Java 8 Number Classifier
Functional Java Number Classifier
Common Building Blocks
Filter
Map
FoldReduce
Synonym Suffering
Filter
Map
FoldReduce
3. Cede
Iteration to Higher-Order Functions
Closures
Currying and Partial Application
Definitions and Distinctions
In Groovy
In Clojure
Scala
Common Uses
Recursion
Seeing Lists Differently
Streams and Work Reordering
4. Smarter, Not Harder
Memoization
Caching
Adding Memoization
Laziness
Lazy Iterator in Java
Totally Lazy Number Classifier
Lazy Lists in Groovy
Building a Lazy List
Benefits of Laziness
Lazy Field Initialization
5. Evolve
Few Data Structures, Many Operations
Bending the Language Toward the Problem
Rethinking Dispatch
Improving Dispatch with Groovy
Clojure''s "Bendable" Language
Clojure Multimethods and a la carte Polymorphism
Operator Overloading
Groovy
Scala
Functional Data Structures
Functional Error Handling
The Either Class
The Option Class
Either Trees and Pattern Matching
6. Advance...
Design Patterns in Functional Languages
Function-Level Reuse
Template Method
Strategy
The Flyweight Design Pattern and Memoization
Factory and Currying
Structural Versus Functional Reuse
Code Reuse Via Structure
7. Practical Thinking
Java 8
Functional Interfaces
Optional
Java 8 Streams
Functional Infrastructure
Architecture
Web Frameworks
Databases
8. Polyglot and Polyparadigm
Combining Functional with Metaprogramming
Mapping Data Types with Metaprogramming
Infinite Streams with Functional Java and GrooW
Consequences of Multiparadigm Languages
Context Versus Composition
Functional Pyramid
Index
|
|