图书介绍

Clojure程序设计PDF|Epub|txt|kindle电子书版本网盘下载

Clojure程序设计
  • (美)哈罗威,(美)拜卓著 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:9787115308474
  • 出版时间:2013
  • 标注页数:255页
  • 文件大小:63MB
  • 文件页数:277页
  • 主题词:程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

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

热门推荐