图书介绍
Clojure程序设计PDF|Epub|txt|kindle电子书版本网盘下载
![Clojure程序设计](https://www.shukui.net/cover/21/30397527.jpg)
- (美)哈罗威,(美)拜卓著 著
- 出版社: 北京:人民邮电出版社
- ISBN:9787115308474
- 出版时间:2013
- 标注页数:255页
- 文件大小:63MB
- 文件页数:277页
- 主题词:程序设计
PDF下载
下载说明
Clojure程序设计PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 启航1
1.1为什么是Clojure2
1.1.1 Clojure非常优雅2
1.1.2 Clojure是Lisp的再度崛起5
1.1.3为什么是Lisp5
1.1.4它是Lisp,但括号少了6
1.1.5 Clojure是函数式语言8
1.1.6 Clojure简化了并发编程9
1.1.7 Clojure与Java虚拟机彼此亲密无间10
1.2 Clojure编程快速入门11
1.2.1使用REPL12
1.2.2特殊变量13
1.2.3添加共享状态14
1.3探索Clojure的程序库16
1.3.1 require和use17
1.3.2查找文档18
1.4小结20
第2章 探索Clojure21
2.1形式21
2.1.1使用数值类型22
2.1.2符号24
2.1.3字符串与字符25
2.1.4布尔值与nil27
2.1.5映射表、关键字和记录28
2.2读取器宏30
2.3函数32
2.3.1匿名函数34
2.3.2何时使用匿名函数36
2.4变量、绑定和命名空间36
2.4.1绑定37
2.4.2解构38
2.4.3命名空间40
2.5调用Java43
2.5.1访问构造函数、方法和字段43
2.5.2 Javadoc45
2.6流程控制45
2.6.1分支结构与if45
2.6.2用do引入副作用46
2.6.3循环与loop/recur47
2.7我的for循环哪儿去了48
2.8元数据52
2.9小结53
第3章 一切皆序列55
3.1一切皆序列56
3.2使用序列库61
3.2.1创建序列61
3.2.2过滤序列64
3.2.3序列谓词65
3.2.4序列转换66
3.3惰性和无限序列69
3.4 Java亦可序化71
3.4.1序化Java容器71
3.4.2序化正则表达式73
3.4.3序化文件系统74
3.4.4序化流75
3.4.5序化XML76
3.5调用特定于结构的函数77
3.5.1列表函数77
3.5.2向量函数78
3.5.3映射表函数79
3.5.4集合函数82
3.6小结85
第4章 函数式编程86
4.1函数式编程理念86
4.1.1纯函数87
4.1.2持久性数据结构87
4.1.3惰性和递归88
4.1.4引用透明性89
4.1.5 FP的优势89
4.1.6 6条规则90
4.2怎样偷个懒91
4.2.1尾递归92
4.2.2自递归与recur94
4.2.3惰性序列95
4.2.4聊聊变现97
4.2.5丢弃头元素98
4.3懒上加懒99
4.4再议递归105
4.4.1转换为自递归106
4.4.2采用Trampolining技术107
4.4.3用惰性化替代递归109
4.4.4用快存为递归抄条近路112
4.5小结114
第5章 状态115
5.1并发、并行和锁定116
5.2引用与软事务内存117
5.2.1 ref-set118
5.2.2事务的属性118
5.2.3 alter119
5.2.4 STM的工作原理:MVCC120
5.2.5 commute121
5.2.6 alter优先122
5.2.7为引用添加验证123
5.3使用原子进行非协同、同步的更新124
5.4使用代理进行异步更新125
5.4.1代理的验证与错误处理126
5.4.2在事务中包含代理127
5.4.3统一的更新模型129
5.5用变量管理线程内状态129
5.5.1远距离作用131
5.5.2用于Java回调API132
5.6 Clojure贪吃蛇134
5.6.1函数式模型135
5.6.2使用STM建立可变模型139
5.6.3贪吃蛇的GUI140
5.6.4没有引用的贪吃蛇143
5.7小结144
第6章 协议和数据类型145
6.1针对抽象编程145
6.2接口148
6.3协议149
6.4数据类型153
6.5记录158
6.6具体化164
6.7小结165
第7章宏166
7.1何时使用宏166
7.2编写流程控制宏167
7.2.1特殊形式、设计模式和宏169
7.2.2宏展开170
7.2.3 when与when-not172
7.3让宏更加简单173
7.3.1语法引述、解引述和解引述拼接175
7.3.2在宏内部创建名称176
7.4宏的分类178
7.4.1有条件的求值180
7.4.2创建变量181
7.4.3 Java互操作183
7.4.4延迟求值184
7.4.5对求值进行包装184
7.4.6避免Lambda表达式186
7.5小结187
第8章 多重方法188
8.1没有多重方法的日子188
8.2定义多重方法190
8.2.1调度是继承感知的192
8.2.2多重方法的默认值192
8.3调度不简单193
8.4创建特设分类法195
8.5何时应该使用多重方法199
8.5.1 Inspector200
8.5.2 clojure.test201
8.5.3反例202
8.6小结203
第9章 极尽Java之所能204
9.1异常处理205
9.1.1保持简单的异常处理205
9.1.2清理资源206
9.1.3响应异常207
9.2与整数搏斗209
93性能优化210
9.3.1使用基本类型提升性能210
9.3.2添加类型提示213
9.4在Clojure中创建Java类215
9.4.1创建Java代理215
9.4.2使用Java容器217
9.5真实世界的例子220
9.5.1真正的持续循环222
9.5.2日志224
9.5.3配置226
9.6小结227
第10章 搭建应用228
10.1为电码译员游戏计分229
10.2测试计分器232
10.2.1手工构造输入233
10.2.2运行测试234
10.2.3验证输出235
10.2.4回归测试236
10.3 test.generative237
10.3.1生成数据237
10.3.2程序化验证238
10.3.3 defspec240
10.3.4运行测试241
10.3.5规格执行失败时242
10.3.6计分函数的产生式测试243
10.4创建用户界面244
10.4.1该是时候处理状态了245
10.4.2玩家界面246
10.5部署代码249
10.5.1 Procfile250
10.5.2 Heroku库250
10.5.3 Git251
10.5.4安置你的应用251
10.5.5部署252
10.6小结252
附录 编辑器254
参考书目255