TOP
0
0
即日起~6/30,暑期閱讀書展,好書7折起
深入淺出RxJS(簡體書)
滿額折

深入淺出RxJS(簡體書)

商品資訊

人民幣定價:89 元
定價
:NT$ 534 元
優惠價
87465
領券後再享88折起
海外經銷商無庫存,到貨日平均30天至45天
可得紅利積點:13 點
相關商品
商品簡介
作者簡介
目次

商品簡介

本書系統講解RxJS響應式編程的技術原理與應用。第1章剖析函數響應式編程的基本概念,通過簡單RxJS代碼引入函數響應式編程,並與傳統編程方式對比,解釋這種編程範式的優勢,以及這種范式形成的歷史。第2章介紹學習RxJS必須掌握的基本概念,包括數據流、操作符和觀察者模式。第3~9章介紹RxJS的各種操作符,以及如何選擇恰當的操作符來完成不同的任務。第10章介紹RxJS如何實現多播的方式。第11章介紹實現調度Scheduler的作用、原理與使用。第12章介紹如何調試和測試RxJS相關代碼,寫出高可測試性代碼。第13章介紹如何在React應用中使用RxJS,提高代碼質量。第14章介紹Redux與RxJS的組合應用,發揮兩者的共同優勢。第15章介紹一個綜合案例,用RxJS實現網頁遊戲Breakout,並剖析RxJS如何實現動畫和繪圖。

作者簡介

程墨,資深架構師,目前服務於美國視頻服務公司Hulu。

目次

目錄 Contents
前言
第1章 函數響應式編程1
1.1 一個簡單的RxJS例子1
1.2 函數式編程5
1.2.1 什麼是函數式編程5
1.2.2 為什麼函數式編程最近才崛起11
1.2.3 函數式編程和面向對象編程的比較13
1.3 響應式編程14
1.4 Reactive Extension15
1.5 RxJS是否是函數響應式編程16
1.6 函數響應式編程的優勢17
1.7 本章小結18
第2章 RxJS入門19
2.1 RxJS的版本和運行環境19
2.2 Observable和Observer24
2.2.1 觀察者模式24
2.2.2 迭代器模式25
2.2.3 創造Observable26
2.2.4 跨越時間的Observable28
2.2.5 永無止境的Observable29
2.2.6 Observable的完結30
2.2.7 Observable的出錯處理31
2.2.8 Observer的簡單形式32
2.3 退訂Observable33
2.4 Hot Observable和Cold Observable35
2.5 操作符簡介37
2.6 彈珠圖39
2.7 本章小結41
第3章 操作符基礎42
3.1 為什麼要有操作符42
3.2 操作符的分類44
3.2.1 功能分類45
3.2.2 靜態和實例分類46
3.3 如何實現操作符49
3.3.1 操作符函數的實現49
3.3.2 關聯Observable53
3.3.3 改進的操作符定義55
3.3.4 lettable/pipeable 操作符60
3.4 本章小結68
第4章 創建數據流69
4.1 創建類操作符70
4.2 創建同步數據流70
4.2.1 create:毫無神奇之處71
4.2.2 of:列舉數據71
4.2.3 range:指定範圍73
4.2.4 generate:循環創建74
4.2.5 repeat:重複數據的數據流75
4.2.6 三個極簡的操作符:empty、never和throw78
4.3 創建異步數據的Observable對象80
4.3.1 interval和timer:定時產生數據80
4.3.2 from:可把一切轉化為Observable82
4.3.3 fromPromise:異步處理的交接84
4.3.4 fromEvent85
4.3.5 fromEventPattern87
4.3.6 ajax88
4.3.7 repeatWhen89
4.3.8 defer91
4.4 本章小結92
第5章 合併數據流93
5.1 合併類操作符94
5.1.1 concat:首尾相連94
5.1.2 merge:先到先得快速通過96
5.1.3 zip:拉鍊式組合99
5.1.4 combineLatest:合併最後一個數據102
5.1.5 withLatestFrom109
5.1.6 解決glitch112
5.1.7 race:勝者通吃115
5.1.8 startWith115
5.1.9 forkJoin117
5.2 高階Observable118
5.2.1 高階Observable的意義119
5.2.2 操作高階Observable的合併類操作符120
5.2.3 進化的高階Observable處理124
5.3 本章小結128
第6章 輔助類操作符129
6.1 數學類操作符129
6.1.1 count:統計數據個數130
6.1.2 max和min:最大最小值130
6.1.3 reduce:規約統計131
6.2 條件布爾類操作符133
6.2.1 every134
6.2.2 find和findIndex135
6.2.3 isEmpty137
6.2.4 defaultIfEmpty138
6.3 本章小結138
第7章 過濾數據流139
7.1 過濾類操作符的模式140
7.1.1 filter141
7.1.2 first142
7.1.3 last144
7.1.4 take一族操作符145
7.1.5 計時的點擊計數網頁程序150
7.1.6 skip151
7.1.7 skipWhile和skipUntil151
7.2 回壓控制152
7.2.1 throttle和debounce154
7.2.2 auditTime和audit164
7.2.3 sampleTime和sample166
7.2.4 根據數據序列做回壓控制168
7.3 其他過濾方式171
7.3.1 ignoreElements172
7.3.2 elementAt172
7.3.3 single173
7.4 本章小結173
第8章 轉化數據流174
8.1 轉化類操作符174
8.2 映射數據175
8.2.1 map176
8.2.2 mapTo177
8.2.3 pluck178
8.3 緩存窗口:無損回壓控制179
8.3.1 windowTime和bufferTime180
8.3.2 windowCount和bufferCount183
8.3.3 windowWhen和bufferWhen184
8.3.4 windowToggle和buffer-Toggle185
8.3.5 window和buffer186
8.4 高階的map188
8.4.1 concatMap189
8.4.2 mergeMap192
8.4.3 switchMap193
8.4.4 exhaustMap195
8.4.5 高階的MapTo195
8.4.6 expand196
8.5 數據分組196
8.6 累計數據200
8.6.1 scan200
8.6.2 mergeScan201
8.7 本章小結203
第9章 異常錯誤處理204
9.1 異常處理不可避免204
9.2 異常處理的難點206
9.2.1 try/catch只支持同步運算207
9.2.2 回調函數的局限207
9.2.3 Promise的異常處理209
9.3 RxJS的異常處理212
9.3.1 catch214
9.3.2 retry216
9.3.3 retryWhen217
9.3.4 finally220
9.4 重試的本質221
9.5 本章小結223
第10章 多播225
10.1 數據流的多播225
10.2 Hot和Cold數據流差異228
10.3 Subject230
10.3.1 兩面神Subject230
10.3.2 用Subject實現多播233
10.3.3 makeHot 操作符234
10.3.4 Subject不能重複使用235
10.3.5 Subject可以有多個上游237
10.3.6 Subject的錯誤處理239
10.4 支持多播的操作符241
10.4.1 multicast241
10.4.2 publish253
10.4.3 share255
10.5 高級多播功能257
10.5.1 publishLast和Async-Subject258
10.5.2 pubishReplay和Replay-Subject259
10.5.3 publishBehavior和BehaviorSubject262
10.6 本章小結263
第11章 掌握時間的Scheduler265
11.1 Schedu

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 465
海外經銷商無庫存,到貨日平均30天至45天

暢銷榜

客服中心

收藏

會員專區