函數(shù)式編程思維是一本編程語言思維指導(dǎo)書,由美國程序員Neal Ford編著。本書主要講解了在各種編程語言中函數(shù)式編程的普及趨勢和詳細編程方法,說明使用函數(shù)式思維來編程開發(fā)的益處,并附以實例,讓讀者接受并了解這種全新的編程方法,最后再使用和掌握這種全新的更方便更易于記憶的編程方法,適合所有程序員和編程愛好者閱讀。
內(nèi)容介紹
《函數(shù)式編程思維》脫離特定的語言特性,關(guān)注各種OOP語言的共同實踐做法,展示如何通過函數(shù)式語言解決問題。例如,如何利用函數(shù)式語言,通過高階函數(shù)、多元方法等完成代碼重用。知名軟件架構(gòu)師Neal Ford為我們展示不同的編程范式,幫我們完成從Java命令式編程人員,到使用Java、Clojure、Scala函數(shù)式編程人員的完美轉(zhuǎn)變,建立對函數(shù)式語言的語法和語義的良好理解。
函數(shù)式編程思維章節(jié)目錄
譯者序 ix 前言 xi 第1 章 為什么 1 1.1 范式轉(zhuǎn)變 2 1.2 跟上語言發(fā)展的潮流 4 1.3 把控制權(quán)讓渡給語言/ 運行時 4 1.4 簡潔 5 第2 章 轉(zhuǎn)變思維 9 2.1 普通的例子 9 2.1.1 命令式解法 9 2.1.2 函數(shù)式解法 10 2.2 案例研究:完美數(shù)的分類問題 15 2.2.1 完美數(shù)分類的命令式解法 15 2.2.2 稍微向函數(shù)式靠攏的完美數(shù)分類解法 16 2.2.3 完美數(shù)分類的Java 8 實現(xiàn) 18 2.2.4 完美數(shù)分類的Functional Java 實現(xiàn) 19 2.3 具有普遍意義的基本構(gòu)造單元 21 2.3.1 篩選 22 2.3.2 映射 23 2.3.3 折疊/ 化約 25 2.4 函數(shù)的同義異名問題 28 2.4.1 篩選 28 2.4.2 映射 31 2.4.3 折疊/ 化約 33 第3 章 權(quán)責讓渡 37 3.1 迭代讓位于高階函數(shù) 37 3.2 閉包 38 3.3 柯里化和函數(shù)的部分施用 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 和作業(yè)順序重排 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 框架的完美數(shù)分類實現(xiàn) 67 4.2.3 Groovy 語言的緩求值列表 69 4.2.4 構(gòu)造緩求值列表 72 4.2.5 緩求值的好處 74 4.2.6 緩求值的字段初始化 76 第5 章 演化的語言 79 5.1 少量的數(shù)據(jù)結(jié)構(gòu)搭配大量的操作 79 5.2 讓語言去迎合問題 81 5.3 對分發(fā)機制的再思考 82 5.3.1 Groovy 對分發(fā)機制的改進82 5.3.2 “身段柔軟”的Clojure 語言 83 5.3.3 Clojure 的多重方法和基于任意特征的多態(tài) 85 5.4 運算符重載 87 5.4.1 Groovy 87 5.4.2 Scala 89 5.5 函數(shù)式的數(shù)據(jù)結(jié)構(gòu) 91 5.5.1 函數(shù)式的錯誤處理 91 5.5.2 Either 類 92 5.5.3 Option 類 100 5.5.4 Either 樹和模式匹配 100 第6 章 模式與重用 107 6.1 函數(shù)式語言中的設(shè)計模式 107 6.2 函數(shù)級別的重用 108 6.2.1 Template Method 模式 109 6.2.2 Strategy 模式 111 6.2.3 Flyweight 模式和記憶 113 6.2.4 Factory 模式和柯里化 116 6.3 結(jié)構(gòu)化重用和函數(shù)式重用的對比 117 第7 章 現(xiàn)實應(yīng)用 125 7.1 Java 8 125 7.1.1 函數(shù)式接口 126 7.1.2 Optional 類型 128 7.1.3 Java 8 的stream 128 7.2 函數(shù)式的基礎(chǔ)設(shè)施 129 7.2.1 架構(gòu) 129 7.2.2 Web 框架 132 7.2.3 數(shù)據(jù)庫 133 第8 章 多語言與多范式 135 8.1 函數(shù)式與元編程的結(jié)合 136 8.2 利用元編程在數(shù)據(jù)類型之間建立映射 137 8.3 多范式語言的后顧之憂 140 8.4 上下文型抽象與復(fù)合型抽象的對比 141 8.5 函數(shù)式金字塔 143 作者簡介 147 封面介紹 147
使用說明
1、下載并解壓,得出pdf文件2、如果打不開本文件,請務(wù)必下載pdf閱讀器
3、安裝后,在打開解壓得出的pdf文件
4、雙擊進行閱讀
- 下載地址
發(fā)表評論
0條評論軟件排行榜
熱門推薦
- cnki全球?qū)W術(shù)快報電腦版 v1.0.1135.99M / 簡體中文
- 網(wǎng)易新聞電腦版 v113.197.68M / 簡體中文
- 瀟湘書院電腦版 v2.3.11.888官方版49.65M / 簡體中文
- 數(shù)據(jù)挖掘?qū)д?官方版61.61M / 簡體中文
- 吉利博瑞用戶手冊 pdf高清版57.89M / 簡體中文
- 未公開的Oracle數(shù)據(jù)庫秘密 迪貝斯pdf掃描版34.69M / 簡體中文
- docker入門實戰(zhàn) pdf完整版1.38M / 簡體中文
- Scala程序設(shè)計第二版 pdf高清完整版15.83M / 簡體中文
- C++黑客編程揭秘與防范第2版 冀云pdf掃描版54.58M / 簡體中文
- HotSpot實戰(zhàn)(陳濤著) 中文pdf掃描版82M / 簡體中文