发表于2024-11-24
深入浅出RxJS 计算机与互联网 书籍|7845078 pdf epub mobi txt 电子书 下载
书[0名0]: | 深入浅出RxJS|7845078 |
图书定价: | 89元 |
图书作者: | 程墨 |
出版社: | [1机1] 械工业出版社 |
出版日期: | 2018/4/1 0:00:00 |
ISBN号: | 9787111596646 |
开本: | 16开 |
页数: | 0 |
版次: | 1-1 |
作者简介 |
程墨 资深架构师,曾任职于摩托罗拉、雅虎和微软,云鸟配送平台联合创始人,目前服务于美[0国0]视频服务公司Hulu。 |
内容简介 |
随着互联网行业的飞速发展,Web开发者面临的挑战也越来越[0大0];伴随着功能的增多,Web应用的复杂度也在快速膨胀。对于Web应用,复杂的问题就是异步操作的处理, 无论用户操作、AJAX请求、动画、WebSocket推送都涉及异步操作,传统的异步处理方[0法0]越来越不适应复杂应用的需要,RxJS的产生就是为了解决日益复杂的前端异步处理问题。RxJS是进入门槛比较高的技术,本书的目的就是降低[0学0]习成本,由浅入深地介绍RxJS,逐步解析这门技术的各个方面,让读者能够以一个平缓的[0学0]习曲线来掌握这一潜力无限的技术。 |
目录 |
前言 [0第0]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 函数响应式编程的[0优0]势17 1.7 本章小结18 [0第0]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 [0第0]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 [0第0]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 三个[0极0]简的操作符: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 [0第0]5章 合并数据流93 5.1 合并类操作符94 5.1.1 concat:[0首0]尾相连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 [0第0]6章 辅助类操作符129 6.1 数[0学0]类操作符129 6.1.1 count:统计数据个数130 6.1.2 max和min:[0大0]小值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 [0第0]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 ig[0no0]reElements172 7.3.2 elementAt172 7.3.3 single173 7.4 本章小结173 [0第0]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 [0第0]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 fin[0all0]y220 9.4 重试的本质221 9.5 本章小结223 [0第0]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 [0第0]11章 掌握时间的Scheduler265 11.1 Scheduler的调度作用265 11.2 RxJS提供的Scheduler268 11.3 Scheduler的工作原理269 11.3.1 单线程的270 11.3.2 调用栈和事件循环272 11.3.3 Scheduler如何工作275 11.4 支持Scheduler的操作符279 11.4.1 创造类和合并类操作符279 11.4.2 observeOn281 11.4.3 subscribeOn282 11.5 本章小结283 [0第0]12章 RxJS的调试和测试284 12.1 调试方[0法0]284 12.1.1 无用武之地的Debugger285 12.1.2 利用日志来调试286 12.1.3 利用do来插入调试代码287 12.1.4 改进的日志调试方[0法0]290 12.1.5 数据流依赖图291 12.1.6 弹珠图292 12.2 单元测试293 12.2.1 单元测试的作用294 12.2.2 RxJS天生适合单元测试297 12.2.3 单元测试的结构298 12.2.4 RxJS单元测试中的时间303 12.2.5 操纵时间的TestScheduler306 12.2.6 可测试性代码325 12.3 本章小结340 [0第0]13章 用RxJS驱动React341 13.1 React简介341 13.1.1 为什么选择React341 13.1.2 React如何工作343 13.2 简单的React应用Counter350 13.3 利用RxJS管理React状态356 13.3.1 利用Subject作为桥梁356 13.3.2 用高阶组件连接RxJS359 13.4 本章小结365 [0第0]14章 Redux和RxJS结合366 14.1 Redux简介366 14.1.1 Redux的工作方式367 14.1.2 构建Redux应用368 14.2 用RxJS实现Redux372 14.3 Redux和RxJS比较374 14.4 Redux-Observable:Redux和RxJS的结合375 14.5 本章小结380 [0第0]15章 RxJS游戏开发381 15.1 breakout的历[0史0]381 15.2 程序设计383 15.3 用RxJS实现breakout385 15.4 本章小结397 结语398 |
深入浅出RxJS 计算机与互联网 书籍|7845078 pdf epub mobi txt 电子书 下载