发表于2024-11-23
JavaScript ES6 函數式編程入門經典(Web開發經典叢書) pdf epub mobi txt 電子書 下載 2024
函數式編程是一種古老的編程範式。近些年來,隨著RxJS 等函數式框架的流行,它煥發瞭青春,再次進入瞭我們的視野。與Haskell 等語言相比,JavaScript 雖然不是一種純函數語言,但它將函數視為一等公民,非常適閤函數式編程範式。函數式編程為應用帶來的可維護性、可測試性和可擴展性是不言而喻的,而純函數、高階函數、柯裏化、組閤、Monad 等諸多概念往往令剛剛接觸它的人無從下手。
快速掌握一個知識體係的秘訣是抓住概念並理清概念之間的關係。《JavaScript ES6 函數式編程入門經典》將函數式編程中那些抽象的原理分解為一個個簡單的概念,娓娓道來,並配以豐富的實戰案例,逐步帶你領略函數式編程的魅力。掌握函數式編程思想對開發與理解單數據流應用非常有幫助,願《JavaScript ES6函數式編程入門經典》帶你開啓這段非凡的旅程!
《JavaScriptES6函數式編程入門經典》使用JavaScriptES6帶你學習函數式編程。你將學習柯裏化、偏函數、高階函數以及Monad等概念。
目前,編程語言已經將焦點從對象轉移到函數。JavaScript支持函數式編程,並允許開發者編寫精心設計的代碼。
主要內容
●掌握函數式編程的概念
●清楚函數在JavaScript中的地位
●理解真實的函數式類庫,並創建一個模擬underscore.js的函數式類庫
●實踐純錯誤處理技術,例如函子和Monad
●瞭解ES6的函數式編程特性,例如擴展運算符和Generator
AntoAravinth是來自VisualBIChennai研發中心的高級商業智能開發工程師。在過去的五年中,他曾使用Java、JavaScript語言以及ReactJs、Angular等框架開發Web應用。他對Web和Web標準有透徹的理解。他也是流行框架ReactJs、Selenium和Groovy的開源貢獻者。AntoAravinth在業餘時間喜歡打乒乓球。他很有幽默感!他也是ReactQuickly一書的技術開發編輯,此書在2017年由Manning齣版社齣版。
第1章函數式編程簡介1
1.1什麼是函數式編程?為何它重要1
1.2引用透明性4
1.3命令式、聲明式與抽象5
1.4函數式編程的好處7
1.5純函數7
1.5.1純函數産生可測試的代碼7
1.5.2閤理的代碼9
1.6並發代碼10
1.7可緩存11
1.8管道與組閤12
1.9純函數是數學函數13
1.10我們要構建什麼15
1.11JavaScript是函數式編程語言嗎15
1.12小結16
第2章JavaScript函數基礎17
2.1ECMAScript曆史18
2.2創建並執行函數19
2.2.1第一個函數19
2.2.2嚴格模式21
2.2.3return語句是可選的22
2.2.4多語句函數22
2.2.5函數參數24
2.2.6ES5函數在ES6中是有效的24
2.3設置項目24
2.3.1初始設置24
2.3.2用第一個函數式方法處理循環問題26
2.3.3export要點28
2.3.4import要點28
2.3.5使用babel-node運行代碼29
2.3.6在npm中創建腳本30
2.3.7從git上運行源代碼31
2.4小結31
第3章高階函數33
3.1理解數據34
3.1.1理解JavaScript數據類型34
3.1.2存儲函數35
3.1.3傳遞函數35
3.1.4返迴函數37
3.2抽象和高階函數38
3.2.1抽象的定義38
3.2.2通過高階函數實現抽象39
3.3真實的高階函數42
3.3.1every函數42
3.3.2some函數44
3.3.3sort函數44
3.4小結48
第4章閉包與高階函數49
4.1理解閉包50
4.1.1什麼是閉包50
4.1.2記住閉包生成的位置52
4.1.3迴顧sortBy函數53
4.2真實的高階函數(續)54
4.2.1tap函數54
4.2.2unary函數56
4.2.3once函數57
4.2.4memoized函數58
4.3小結60
第5章數組的函數式編程61
5.1數組的函數式方法62
5.1.1map62
5.1.2filter65
5.2連接操作67
5.3reduce函數71
5.4zip數組77
5.5小結81
第6章柯裏化與偏應用83
6.1一些術語84
6.1.1一元函數84
6.1.2二元函數84
6.1.3變參函數84
6.2柯裏化86
6.2.1柯裏化用例87
6.2.2日誌函數——應用柯裏化89
6.2.3迴顧curry90
6.2.4迴顧日誌函數93
6.3柯裏化實戰94
6.3.1在數組內容中查找數字94
6.3.2求數組的平方95
6.4數據流96
6.4.1偏應用96
6.4.2實現偏函數97
6.4.3柯裏化與偏應用99
6.5小結100
第7章組閤與管道101
7.1組閤的概念102
7.2函數式組閤104
7.2.1迴顧map與filter104
7.2.2compose函數106
7.3應用compose函數106
7.3.1引入curry與partial108
7.3.2組閤多個函數111
7.4管道/序列113
7.5組閤的優勢114
7.5.1組閤滿足結閤律114
7.5.2使用tap函數調試115
7.6小結116
第8章函子117
8.1什麼是函子118
8.1.1函子是容器118
8.1.2函子實現瞭map方法120
8.2MayBe函子121
8.2.1實現MayBe函子122
8.2.2簡單用例123
8.2.3真實用例125
8.3Either函子129
8.3.1實現Either函子130
8.3.2reddit例子的Either版本131
8.4Pointed函子134
8.5小結134
第9章深入理解Monad135
9.1根據搜索詞條獲取Reddit評論136
9.2問題描述136
9.2.1實現第一步138
9.2.2閤並Reddit調用141
9.2.3多個map的問題144
9.3通過join解決問題146
9.3.1實現join146
9.3.2實現chain148
9.4小結151
第10章使用Generator153
10.1異步代碼及其問題154
10.2Generator基礎156
10.2.1創建Generator156
10.2.2Generator的注意事項157
10.2.3yield關鍵字158
10.2.4done屬性160
10.2.5嚮Generator傳遞數據162
10.3使用Generator處理異步調用164
10.3.1一個簡單的案例164
10.3.2一個真實的案例169
10.4小結172
附錄173
函數式編程是一種古老的編程範式。近些年來,隨著RxJS等函數式框架的流行,它煥發瞭青春,再次進入瞭我們的視野。與Haskell等語言相比,JavaScript雖然不是一種純函數語言,但它將函數視為一等公民,非常適閤函數式編程範式。函數式編程為應用帶來的可維護性、可測試性和可擴展性是不言而喻的,而純函數、高階函數、柯裏化、組閤、Monad等諸多概念往往令剛剛接觸它的人無從下手。
快速掌握一個知識體係的秘訣是抓住概念並理清概念之間的關係。本書將函數式編程中那些抽象的原理分解為一個個簡單的概念,娓娓道來,並配以豐富的實戰案例,逐步帶你領略函數式編程的魅力。掌握函數式編程思想對開發與理解單數據流應用非常有幫助,願本書帶你開啓這段非凡的旅程!
本譯作能夠順利完成,首先感謝清華大學齣版社李陽老師的推薦與信任,提供的非常有價值的建議使我在翻譯的過程中受益良多。感謝我的妻子對我的理解與支持。感謝如天使般可愛的女兒Eva,你是上天賜給我最好的禮物。本書全部內容由梁宵翻譯,參與翻譯的還有騰訊高級工程師王誌壽和Uber高級工程師羅譽傢。
在翻譯過程中我盡力修正瞭一些原作的小錯誤,但由於水平有限,難免存在不足之處,懇請廣大
對於瞭解ES6的新特性很有用,書要比想象中的小很多。
評分不錯的東西
評分書小是小,但是內容豐富
評分這本小書寫的不錯,es6函數式,不差,不錯!
評分這本書寫的沒什麼用,內容泛泛而談,沒有具體應用。
評分商品質量好,送貨速度快,支持京東
評分看完瞭,比較容易弄懂的!!
評分這本書寫的沒什麼用,內容泛泛而談,沒有具體應用。
評分內容太淺,不值這個價
JavaScript ES6 函數式編程入門經典(Web開發經典叢書) pdf epub mobi txt 電子書 下載