• javascript函数式编程指南 编程语言 (美)路易斯·阿泰西奥(luis atencio)
  • javascript函数式编程指南 编程语言 (美)路易斯·阿泰西奥(luis atencio)
  • javascript函数式编程指南 编程语言 (美)路易斯·阿泰西奥(luis atencio)
  • javascript函数式编程指南 编程语言 (美)路易斯·阿泰西奥(luis atencio)
  • javascript函数式编程指南 编程语言 (美)路易斯·阿泰西奥(luis atencio)
21年品牌 40万+商家 超1.5亿件商品

javascript函数式编程指南 编程语言 (美)路易斯·阿泰西奥(luis atencio)

可实践的函数式编程技术 函数式编程的使用场景 javascript开发人员参书

29.2 4.9折 59 全新

库存30件

北京丰台
认证卖家担保交易快速发货售后保障

作者(美)路易斯·阿泰西奥(luis atencio)

出版社人民邮电出版社

ISBN9787115462046

出版时间2018-06

版次1

装帧平装

开本16

页数210页

字数202千字

定价59元

货号304_9787115462046

上书时间2024-06-21

智胜图书专营店

六年老店
已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
正版特价新书
商品描述
目录:

部分函数式思想
章走近函数式3
1.1函数式编程有用吗?4
1.2什么是函数式编程?5
1.2.1函数式编程是声明式编程7
1.2.2副作用带来的问题和纯函数8
1.2.3引用透明和可置换12
1.2.4存储不可变数据13
1.3函数式编程的优点14
1.3.1鼓励复杂任务的分解15
1.3.2使用流式链来处理数据16
1.3.3复杂异步应用中的响应18
1.4结19
第2章高阶javascript21
2.1为什么要使用javascript?22
2.2函数式与面向对象的程序设计22
2.2.1管理javascript对象的28
2.2.2将对象视为数值29
2.2.3深冻结可变部分31
2.2.4使用lenses定位并修改对象图33
2.3函数34
2.3.1一等函数35
2.3.2高阶函数36
2.3.3函数调用的类型38
2.3.4函数方法39
2.4闭包和作用域40
2.4.1全局作用域42
2.4.2函数作用域43
2.4.3伪块作用域44
2.4.4闭包的实际应用45
2.5结48
第二部分函数式基础
第3章轻数据结构,重作51
3.1理解程序的控制流52
3.2方法53
3.3函数链54
3.3.1了解lambda表达式54
3.3.2用_.map做数据变换56
3.3.3用_.reduce收集结果57
3.3.4用_.filter删除不需要的元素61
3.4代码推理62
3.4.1声明式惰计算函数链63
3.4.2类sql的数据:函数即数据66
3.5学会递归地思68
3.5.1什么是递归?68
3.5.2学会递归地思68
3.5.3递归定义的数据结构70
3.6结73
第4章模块化且可重用的代码75
4.1方法链与函数管道的比较76
4.1.1方法77
4.1.2函数的管道化78
4.2管道函数的兼容条件78
4.2.1函数的类型兼容条件78
4.2.2函数与元数:元组的应用79
4.3柯里化的函数求值82
4.3.1函数工厂85
4.3.2创建可重用的函数模板86
4.4部分应用和函数绑定87
4.4.1核心语言扩展89
4.4.2延迟函数绑定89
4.5组合函数管道90
4.5.1html部件的组合91
4.5.2函数组合:描述与求值分离92
4.5.3函数式库的组合95
4.5.4应对纯的代码和不纯的代码96
4.5.5point-free编程98
4.6使用函数组合子来管理程序的控制流99
4.6.1identity(i-binator)99
4.6.2tap(k-组合子)99
4.6.3alt(or-组合子)100
4.6.4seq(s-组合子)101
4.6.5fork(join)组合子101
4.7结102
第5章针对复杂应用的设计模式103
5.1命令式错误处理的不足104
5.1.1用try-catch处理错误104
5.1.2函数式程序不应抛出
异常105
5.1.3空值(null)检查问题106
5.2一种更好的解决方案——functor106
5.2.1包裹不安全的值107
5.2.2functor定义108
5.3使用monad函数式地处理错误111
5.3.1monad:从控制流到数据流111
5.3.2使用maybemonad和eithermonad来处理异常115
5.3.3使用iomonad与外部资源交互123
5.4monadic链式调用及组合126
5.5结131
第三部分函数式技能提升
第6章坚不可摧的代码135
6.1函数式编程对单元测试的影响136
6.2测试命令式代码的困难137
6.2.1难以识别和分解任务137
6.2.2对共享资源的依赖会导致结果不一致138
6.2.3按预定义顺序执行139
6.3测试函数式代码140
6.3.1把函数当作黑盒子140
6.3.2专注于业务逻辑,而不是控制流141
6.3.3使用monadic式从不纯的代码中分离出纯函数142
6.3.4mock外部依赖144
6.4通过属测试制定规格说明146
6.5通过代码覆盖率衡量有效152
6.5.1衡量函数式代码测试的有效152
6.5.2衡量函数式代码的复杂155
6.6结158
第7章函数式优化159
7.1函数执行机制160
7.1.1柯里化与函数上下文堆栈161
7.1.2递归的弱点164
7.2使用惰求值推迟执行165
7.2.1使用函数式组合子避重复计算167
7.2.2利用shortcutfusion167
7.3实现需要时调用的策略168
7.3.1理解记忆化169
7.3.2记忆化计算密集型函数169
7.3.3有效利用柯里化与记忆化172
7.3.4通过分解来实现更大程度的记忆化173
7.3.5记忆化递归调用173
7.4递归和尾递归优化175
7.5结178
第8章管理异步事件以及数据181
8.1异步代码的挑战182
8.1.1在函数之间创建时间依赖关系182
8.1.2陷入回调金字塔183
8.1.3使用持续传递式样186
8.2一等公民promise188
8.2.1将来的方法190
8.2.2组合同步和异步行为195
8.3生成惰数据197
8.3.1生成器与递归199
8.3.2迭代器协议200
8.4使用rxjs进行函数式和响应式编程202
8.4.1数据作为observable序列202
8.4.2函数式编程与响应式编程203
8.4.3rxjs和promise205
8.5结206
附录本书中使用的javascript库207
函数式javascript库207
使用的其他库208

内容简介:

本书主要介绍如何通过ecmacript6将函数式编程技术应用于代码,以降低代码的复杂。本书共三部分内容。靠前部分“函数式思想”是为第二部分的学作铺垫的,这一部分引入了对函数式javacript的描述,从一些核心的函数式概念入手,介绍了纯函数、副作用以及声明式编程等函数式编程的主要支柱:第二部分“函数式基础”重点介绍函数式编程的核心技术,如函数链、柯里化、组合、monad等;第三部分“函数式技能提升”则是介绍使用函数式编程解决现实问题的方法。本书循序渐进地将函数式编程的相关知识铺陈开来,以理论作铺垫,并铺以实例,旨在帮助读者更好地掌握这些内容。如果读者是对面向对象软件有的了解,且对现代web应用程序挑战有认识的javacript开发人员,那么可以从中提升函数式编程技能。如果读者是函数式编程的初学者,那么可以将本书作为入门书籍仔细阅读,为今后的学夯实基础。

作者简介:

路易斯阿泰西奥,是美国佛罗里达州劳德代尔堡的citrixytem公司的一名软件工程师。他拥有计算机科学学士和硕士,现在使用javacript、java和php台进行全职开发和构建应用程序。lui积极参与社区活动,并经常在当地的聚会和会议中发表演讲。他在luiatencio.上发布关于软件工程的博客,并为杂志和dzone撰写文章,同时还是rxjinaction的共同作者。

   相关推荐   

—  没有更多了  —

以下为对购买帮助不大的评价

正版特价新书
此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP