-
>
全國計算機等級考試最新真考題庫模擬考場及詳解·二級MSOffice高級應用
-
>
決戰行測5000題(言語理解與表達)
-
>
軟件性能測試.分析與調優實踐之路
-
>
第一行代碼Android
-
>
JAVA持續交付
-
>
EXCEL最強教科書(完全版)(全彩印刷)
-
>
深度學習
前端函數式演進 版權信息
- ISBN:9787111671008
- 條形碼:9787111671008 ; 978-7-111-67100-8
- 裝幀:一般膠版紙
- 冊數:暫無
- 重量:暫無
- 所屬分類:>>
前端函數式演進 本書特色
適讀人群 :本書內容圍繞前端開發領域,列舉的實例多基于前端框架和工具等方面,適合中高級前端開發者和對前端生態有所了解的程序員閱讀從前端角度講解函數式編程核心知識,剖析熱門前端工具應用的函數式理論和思想,結合具體場景給出大量案例 資深前端工程師,阿里本地生活企業訂餐前端負責人,擁有10余年軟件開發工作經驗。
前端函數式演進 內容簡介
文章的內容先是介紹函數式所屬的技能樹位置:編程范式,也介紹了各種范式在前端的體現。隨后會過一批函數式的常見概念,給對函數式思想了解較少的同學一些基礎內容。這兩章節我理解對于基礎較好的同學可能是老生常談,但因為加入了一些前端示例和我的理解,也應該能算是老壇新酒。
了解完編程范式和基礎概念后,我會直接進入“函數式思維”的內容。這章內容主要是幫助大家在依賴函數式框架工具設計時,從傳統命令式編程的思考方式,向更契合函數式前端開發的方式改變。比如對循環的實現、數據結構的差別、對異常態和類型的處理等。
第四到七章,分別是前端函數式的幾種重要的形態。第四章是Monadic編程,它是函數式的一種經典工程實現,也在前端衍生了一些工具。我將在這章把前端函數式的幾個基礎理論單元如函子、幺半群的介紹,用它們實現復雜工具Promise的推導,以及少量有必要介紹給大家的范疇論知識都詳盡敘述。
第五章則是“從jQuery而來,看函數式工具形態演進”。很多其他領域工程師對前端的理解都停留在了jQuery的經典時代。我會從函數式的“形”的角度出發,帶來jQuery開始的前端函數式工具論述。第六章和第七章我將介紹前端函數式發展到一定成熟度后,這兩年的兩個熱門框架工具:RxJS和React Hook。介紹他們的基本原理和他們基于什么樣的需求和過程演進出來的。
所以文章基本是兩大部分,前三章的偏理論內容,和后四章的偏熱門工具內容。也都是大家希望付出一定時間了解的熱點內容。
*后一章,我想在總結的同時,回歸初心,和大家探討一些當前前端開發的核心復雜度,以及函數式在當前前端開發中的貢獻。然后我們還要厘定方向,像多借鑒函數式思想一樣,多借“他山之石”,幫助大家在前端和其他研發領域成為更出色的研發工程師。
前端函數式演進 目錄
第1章 編程范式和前端體現 1
1.1 編程范式 2
1.2 命令式編程 2
1.3 面向對象 3
1.4 元編程 4
1.5 聲明式編程 5
1.6 邏輯式編程 6
1.7 函數式編程 8
1.8 案例和代碼 9
1.8.1 案例總覽 9
1.8.2 命令式編程示例 11
1.8.3 聲明式編程示例 11
1.8.4 面向對象、元編程和函數式編程示例 13
1.9 本章小結 15
第2章 前端函數式基礎概念 16
2.1 JavaScript多范式中的函數式 16
2.1.1 閉包 17
2.1.2 高階函數 18
2.1.3 Lambda表達式 19
2.1.4 Array數組集合和函數組合子 20
2.2 持續補全 21
2.2.1 基于JavaScript高階函數的編碼優化 21
2.2.2 基于工具和標準的再加工 24
2.3 函數式的抽象單元 26
2.3.1 副作用 27
2.3.2 引用透明和純函數 27
2.4 案例和代碼 28
2.4.1 閉包和單例 28
2.4.2 數組方法和鏈式調用 31
2.4.3 惰性加載 32
2.5 本章小結 33
第3章 函數式思維和前端特征 35
3.1 狀態和副作用 36
3.2 過程和高階抽象 38
3.2.1 便捷地對過程反復包裝 39
3.2.2 另一種編程世界觀:流過系統的信息流 40
3.3 運行環境承擔更多的職責 41
3.3.1 循環、映射和遞歸 42
3.3.2 函數式過程抽象忽略的細節操作 43
3.4 類型和數據結構 44
3.4.1 面向能力的數據結構 44
3.4.2 對場景下類型的作用進行替換 46
3.5 設計模式和語言特征 48
3.6 異常態 49
3.7 前端的其他特征 50
3.7.1 弱類型和動態類型 51
3.7.2 Array的組合運算 51
3.8 案例和代碼 52
3.8.1 狀態和副作用示例 52
3.8.2 過程和高階抽象示例 55
3.8.3 循環和遞歸示例 56
3.8.4 類型檢測和動態類型 60
3.8.5 異常態和容錯處理 61
3.9 本章小結 63
第4章 Monadic編程和它的范疇理論 64
4.1 Monadic編程簡介 64
4.2 函子和它的基礎實例 65
4.3 應用函子 66
4.4 Maybe實現類 68
4.5 Either函子 71
4.6 幺半群 73
4.7 單子:自函子范疇上的幺半群 75
4.8 函數響應式編程 77
4.9 案例和代碼 78
4.9.1 函子示例 78
4.9.2 響應式編程的簡單示例 80
4.10 本章小結 81
第5章 函數式工具形態演進 82
5.1 jQuery和鏈式調用 82
5.2 管道和組合 84
5.3 Promise編碼 87
5.4 Async/Await函數 89
5.5 MobX、RxJS和響應式編程 90
5.6 函數式的并發保障 92
5.7 案例和代碼 94
5.7.1 鏈式調用和開發中調試 94
5.7.2 Pipeline和切面編程 95
5.7.3 Async/Await異步和異常 96
5.8 本章小結 97
第6章 從RxJS看事件流和函數響應式編程 99
6.1 RxJS的產生和事件流編程演進 99
6.1.1 RxJS的產生 100
6.1.2 事件流響應演變 100
6.2 核心類 103
6.3 “紅包雨掉落”代碼改造 106
6.4 事件流相關主要方法舉例 110
6.5 案例和代碼 114
6.6 本章小結 118
第7章 React Hooks和它的函數式考量 120
7.1 無狀態組件和狀態管理 120
7.1.1 現代前端框架和無狀態組件 121
7.1.2 狀態管理 125
7.2 React Hooks的原理和目的 128
7.3 React Hooks的實踐和方向 130
7.4 案例和代碼 133
7.5 本章小結 137
第8章 函數式和前端復雜度總結 138
8.1 前端開發的復雜度 138
8.1.1 前端開發者可以介入的時機 139
8.1.2 純粹的運算復雜度 142
8.1.3 前端和相鄰領域復雜度的區別 142
8.2 函數式在前端的積極作用 144
8.2.1 厘清運行時的狀態變化 145
8.2.2 加強編程的工程指標 145
8.2.3 簡化編碼 146
8.3 編碼之上的工作 146
8.3.1 軟件完整度和現實的工作狀態 146
8.3.2 前端迭代的呼應 147
8.3.3 編碼外的更多規劃 148
8.4 他山之石 148
8.4.1 前端即是客戶端 148
8.4.2 更充分地利用前端能力 149
8.4.3 工程研發 149
8.5 案例和代碼 151
8.5.1 前端開發復雜度 151
8.5.2 運行時監控和整體工程特性 155
8.6 本章小結 158
第9章 簡易關卡引擎項目補充 159
9.1 需求清單 159
9.2 項目和文件結構 161
9.3 開發者和用戶交互 162
9.4 整體服務和引擎生命周期 162
9.5 代碼清單 163
9.5.1 主頁需求實現 163
9.5.2 關卡頁需求實現 167
9.5.3 統計分數等數據服務邏輯 176
9.5.4 體力模式等前端業務邏輯 178
9.5.5 自定義關卡詳情頁 181
9.5.6 廣告頁和活動頁 183
9.6 更多擴展 186
9.7 本章小結 186
前端函數式演進 作者簡介
邵丁丁資深前端開發工程師,阿里本地生活(餓了么)企業訂餐技術部前端負責人,對函數式編程以及函數式編程在前端領域的應用有深入的研究。擁有10余年的傳統軟件和互聯網軟件開發經驗,曾參與大型企業內部控制類軟件(ERP系統、OA系統)、檢測類工程軟件以及餓了么外賣十多條業務線的Web前端項目的研發,對軟件工程和軟件架構有深刻的理解。
- >
史學評論
- >
羅庸西南聯大授課錄
- >
企鵝口袋書系列·偉大的思想20:論自然選擇(英漢雙語)
- >
經典常談
- >
上帝之肋:男人的真實旅程
- >
煙與鏡
- >
朝聞道
- >
巴金-再思錄