图书介绍

Clojure高级编程PDF|Epub|txt|kindle电子书版本网盘下载

Clojure高级编程
  • (美)JeremyAnderson,(美)MichaelGaare等著;蒋楠译 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302471110
  • 出版时间:2017
  • 标注页数:247页
  • 文件大小:41MB
  • 文件页数:264页
  • 主题词:JAVA语言-程序设计

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函数式思维2

1.1.1以值为导向2

1.1.2从递归的角度考虑问题4

1.1.3高阶函数7

1.1.4拥抱惰性11

1.1.5当变动成为必需时12

1.1.6 Nil双关15

1.1.7函数式Web16

1.2改进面向对象编程17

1.2.1利用defmulti实现多态调度18

1.2.2使用deftype和defrecord定义类型20

1.2.3协议21

1.2.4 reify22

1.3可持久化数据结构23

1.4塑造语言27

1.5小结29

第2章Clojure的快速反馈循环31

2.1 REPL驱动开发31

2.1.1 REPL在Leiningen中的基本操作32

2.1.2通过nREPL实现远程REPL34

2.1.3 REPL在实际程序中的应用36

2.1.4 REPL与编辑器的连接40

2.2代码重载41

2.2.1从REPL重载代码41

2.2.2自动重载代码45

2.2.3编写可重载的代码52

2.3小结54

第3章Web服务55

3.1项目总览55

3.2构成Web服务的元素57

3.2.1库,而非框架57

3.2.2 HTTP57

3.2.3路由66

3.2.4 JSON端点73

3.3示例服务78

3.3.1创建项目78

3.3.2其他命名空间78

3.3.3默认中间件81

3.3.4存储协议82

3.3.5处理函数87

3.3.6中间件92

3.3.7路由94

3.4部署99

3.4.1使用Leiningen99

3.4.2编译Uberj ar或Uberwar100

3.4.3托管101

3.5小结102

第4章 测试105

4.1 clojure.test测试基础106

4.1.1 with-test宏106

4.1.2 deftest库107

4.1.3 are108

4.1.4使用基境109

4.2测试策略110

4.2.1数据库测试110

4.2.2 Ring处理函数测试112

4.2.3采用with-redefs实现模拟/存根115

4.2.4重新定义动态var117

4.2.5采用vcr-clj实现录制和重放118

4.3度量代码质量119

4.3.1采用cloverage度量代码覆盖率120

4.3.2采用kibit和bikeshed进行静态分析122

4.3.3将依赖置于掌控之中124

4.4其他测试框架127

4.4.1 expectations127

4.4.2 speclj128

4.4.3 Cucumber129

4.4.4 kerodon136

4.5小结137

第5章 采用ClojureScript开发反应式网页139

5.1 ClojureScript与众不同140

5.2 ClojureScript初探142

5.2.1创建新的ClojureScript项目142

5.2.2采用Figwheel实现快速反馈143

5.2.3创建组件144

5.2.4数据建模145

5.2.5响应事件并处理状态变更147

5.2.6理解错误和警告信息148

5.2.7命名空间布局151

5.2.8样式152

5.2.9表单输入与表单处理153

5.2.10导航和路由156

5.2.11 HTTP调用:与服务器进行通信157

5.2.12拖放160

5.2.13发布160

5.3 Reagent进阶162

5.3.1形式1:返回向量的函数162

5.3.2形式2:返回组件的函数163

5.3.3形式3:返回类的函数164

5.3.4序列与键165

5.3.5自定义标记167

5.3.6反应168

5.3.7对样式的注释170

5.4 Devcards的测试组件170

5.5与JavaScript的互操作性174

5.6一种语言,一种惯用法,多个平台176

5.7 Closure编译器和Closure库浅析176

5.8采用DataScript处理建模状态177

5.9在浏览器中使用core.async178

5.10小结179

第6章Datomic数据库181

6.1 Datomic基础182

6.1.1为何选择Datomic?182

6.1.2 Datomic数据模型184

6.1.3查询187

6.1.4事务192

6.1.5索引:将数据切实绑定在一起195

6.1.6 Datomic的独特架构198

6.2对应用数据建模200

6.2.1任务跟踪器应用的示例模式200

6.2.2实体id和分区209

6.3 Datomic的Clojure API209

6.3.1基本设置209

6.3.2在REPL中小试牛刀213

6.4采用Datomic构建应用219

6.4.1用户函数219

6.4.2账户函数222

6.4.3任务函数223

6.4.4部署227

6.4.5局限性227

6.5小结228

第7章 性能231

7.1何为性能?233

7.2性能优化的前提:选择正确的数据结构233

7.3基准测试235

7.3.1测定低速模块的时间235

7.3.2采用Criterium测定高速模块的时间237

7.3.3采用测试选择器进行性能测试239

7.4并行239

7.5记忆化240

7.6内联241

7.7利用瞬态机制安全地处理变动243

7.8性能分析243

7.9利用类型提示避免反射244

7.10 Java标志246

7.11数值计算246

7.12小结247

热门推荐