由于此商品库存有限,请在下单后15分钟之内支付完成,手慢无哦!
100%刮中券,最高50元无敌券,券有效期7天
活动自2017年6月2日上线,敬请关注云钻刮券活动规则更新。
如活动受政府机关指令需要停止举办的,或活动遭受严重网络攻击需暂停举办的,或者系统故障导致的其它意外问题,苏宁无需为此承担赔偿或者进行补偿。
正版 Clojure经典实例 [美]Luke VanderHart,[加]Ryan Neufeld 人
¥ ×1
译者序 xi
前言 xiii
第1 章 原生数据 1
1.0 简介 1
1.1 改变字符串的大小写 2
1.2 清除字符串中的空白字符 3
1.3 利用部件构建字符串 5
1.4 将字符串作为字符序列 6
1.5 字符与整数的转换 7
1.6 格式化字符串 9
1.7 按模式查找字符串 11
1.8 利用正则表达式从字符串中取出值 12
1.9 对字符串执行查找和替换 13
1.10 将字符串切分成部分 15
1.11 基于数量为字符串加复数 16
1.12 在字符串、符号和关键字之间的转换 18
1.13 利用非常大或非常小的数来保持精度 20
1.14 使用有理数 21
1.15 解析数字 23
1.16 数的截断和舍入 24
1.17 模糊比较 26
1.18 三角计算 27
1.19 根据不同的进制输入和输出整数 29
1.20 计算数值集合的统计值 30
1.21 位操作 33
1.22 生成随机数 34
1.23 操作货币 36
1.24 生成唯一ID 37
1.25 得到当前的日期和时间 39
1.26 用字面值来表示日期 40
1.27 利用clj-time 解析日期和时间 42
1.28 利用clj-time 格式化日期 43
1.29 比较日期 45
1.30 计算时间间隔的长度 46
1.31 生成一系列的日期和时间 48
1.32 利用原生Java 类型生成一系列日期和时间 49
1.33 根据日期间的关系取得日期 52
1.34 处理时区 53
1.35 将Unix 时间戳转换成Date 对象 55
1.36 将Date 对象转换成Unix 时间戳 56
第2 章 复合数据 58
2.0 简介 58
2.1 创建列表 59
2.2 从已有的数据结构创建列表 61
2.3 在列表中“添加”一个元素 62
2.4 从列表中“移除”一个元素 63
2.5 测试是否列表 64
2.6 创建向量 65
2.7 在向量中“添加”一个元素 66
2.8 从向量中“移除”一个元素 67
2.9 取得索引处的值 68
2.10 设置索引处的值 70
2.11 创建集 71
2.12 在集中添加和移除元素 73
2.13 测试集成员 74
2.14 使用集操作 76
2.15 创建映射表 77
2.16 从映射表中取得值 79
2.17 从映射表中同时取出多个键 82
2.18 设置映射表中的键 84
2.19 用复合值作为映射表的键 86
2.20 将映射表作为序列(或反过来) 88
2.21 对映射表应用函数 90
2.22 一个键保存多个值 92
2.23 合并映射表 95
2.24 值的比较与排序 97
2.25 从集合中移除重复元素 100
2.26 检测集合是否包含几个值中的一个 102
2.27 实现定制的数据结构:红黑树(第一部分) 103
2.28 实现定制的数据结构:红黑树(第二部分) 106
第3 章 广义计算 111
3.0 简介 111
3.1 运行最小的Clojure REPL 111
3.2 交互式文档 112
3.3 探索命名空间 114
3.4 尝试库而不指明依赖关系 116
3.5 运行Clojure 程序 117
3.6 从命令行运行程序 119
3.7 解析命令行参数 121
3.8 创建定制的项目模板 124
3.9 构建具有多态行为的函数 128
3.10 扩展内建的类型 133
3.11 用core.async 解除消费者和生产者的耦合 135
3.12 用core.match 为Clojure 表达式制作解析器 138
3.13 用core.logic 查询层级图 141
3.14 演奏儿歌 146
第4 章 本地I/O 150
4.0 简介 150
4.1 写入STDOUT 和STDERR 150
4.2 从控制台读入一次击键 152
4.3 执行系统命令 153
4.4 访问资源文件 156
4.5 复制文件 157
4.6 删除文件或目录 159
4.7 列出目录中的文件 161
4.8 文件的内存映射 163
4.9 读写文本文件 164
4.10 使用临时文件 165
4.11 在任意位置读写文件 166
4.12 并行文件处理 168
4.13 带归约的并行文件处理 170
4.14 读写Clojure 数据 172
4.15 在配置文件中使用edn 174
4.16 将记录作为edn 值发布 178
4.17 读取Clojure 数据时处理未知的带标签字面值 180
4.18 从文件中读取属性 182
4.19 读写二进制文件 184
4.20 读写CSV 数据 186
4.21 读写压缩文件 187
4.22 处理XML 数据 189
4.23 读写JSON 数据 190
4.24 生成PDF 文件 192
4.25 生成带可滚动文本的GUI 窗口 196
第5 章 网络I/O 和Web 服务 200
5.0 简介 200
5.1 发出HTTP 请求 200
5.2 执行异步HTTP 请求 202
5.3 发出Ping 请求 204
5.4 取得并解析RSS 数据 205
5.5 发送邮件 206
5.6 用RabbitMQ 实现队列通信 210
5.7 通过MQTT 与嵌入式设备通信 215
5.8 并发使用ZeroMQ 219
5.9 创建TCP 客户端 222
5.10 创建TCP 服务器 223
5.11 收发UDP 包 227
第6 章 数据库 230
6.0 简介 230
6.1 连接SQL 数据库 231
6.2 利用连接池连接SQL 数据库 233
6.3 操作SQL 数据库 236
6.4 用Korma 简化SQL 242
6.5 用Lucene 进行全文查找 245
6.6 用ElasticSearch 建立数据索引 248
6.7 使用Cassandra 252
6.8 使用MongoDB 256
6.9 使用Redis 259
6.10 连接Datomic 数据库 262
6.11 为Datomic 数据库定义数据模式 264
6.12 向Datomic 写入数据 267
6.13 从Datomic 数据库中删除数据 270
6.14 尝试Datomic 事务而不提交 272
6.15 遍历Datomic 索引 274
第7 章 Web 应用 277
7.0 简介 277
7.1 Ring 简介 277
7.2 使用Ring 中间件 279
7.3 用Ring 提供静态文件 281
7.4 用Ring 处理表单数据 282
7.5 用Ring 处理Cookie 284
7.6 用Ring 保存会话 286
7.7 在Ring 中读写请求和响应的头 288
7.8 用Compojure 路由请求 289
7.9 用Ring 执行HTTP 重定向 291
7.10 用Liberator 构建REST 风格的应用 292
7.11 用Enlive 实现HTML 模板 294
7.12 用Selmer 实现模板 300
7.13 用Hiccup 实现模板 305
7.14 渲染Markdown 文档 307
7.15 用Luminus 来构建应用 310
第8 章 性能与开发效率 312
8.0 简介 312
8.1 AOT 编译 312
8.2 将项目打包成JAR 文件 314
8.3 创建WAR 文件 317
8.4 将应用作为守护进程运行 320
8.5 利用类型暗示减轻性能问题 325
8.6 用原生Java 数组进行快速数学运算 328
8.7 用Timbre 进行简单剖析 330
8.8 用Timbre 记日志 332
8.9 向Clojars 发布库 334
8.10 使用宏来简化API 弃用 336
第9 章 分布式计算 341
9.0 简介 341
9.1 用Storm 构建活动推送系统 342
9.2 用抽取转换加载(ETL)管道来处理数据 350
9.3 聚合大型文件 354
9.4 测试Cascalog 工作流 359
9.5 设置Cascalog 任务的检查点 361
9.6 解释Cascalog 查询 363
9.7 在Elastic MapReduce 上运行Cascalog任
王海鹏,独立咨询顾问、培训讲师、译者和软件开发者,1994年毕业于华东师范大学。他拥有20余年编程经验,目前主要的研究领域是算法交易,对各种新技术都有兴趣,已翻译20余本软件开发类图书。
本书涵盖150多个具体实例,展示了有经验的Clojure开发者如何用这门JVM语言完成各种编程任务。解决方案全面广泛:从构建动态网站和应用数据库到网络通信、云计算、高级测试策略等,面面俱到。这些实例源于全球60多名Clojure开发者。
本书的每个实例不仅可以即学即用,而且其中提供的关于解决方案原理的讨论,让读者可以在模式、方法和技巧上举一反三,从而在遇到本书未提及的其他编程任务时也能游刃有余。
通过阅读本书,你可以:
掌握内建原生数据和复合数据结构;
使用Leiningen工具创建、开发和发布库;
与本地计算机交互;
管理网络通信协议和库;
掌握连接和使用各种数据库的技术;
应用Ring HTTP服务器库构建并维护动态网站;
解决封装、发布、配置、日志等应用任务;
进行云计算和重量级分布式数据处理;
深入研究单元测试、集成测试、模拟测试和基于属性的测试。
“Clojure是由实践者所创,也是为实践者而创,而这本书也一样,它源于实践,面向实践,是Clojure实际开发的全面指南。”
——Rich Hickey
Clojure之父,Cognitect公司CTO
本书以具体实例的形式讲解了Clojure语言在不同领域的应用,不仅介绍如何运用Clojure,而且还展示了很多常见库。书中给出了添加了注释的示例代码,详细分析并解释了数百个真实世界的编程任务。读者既可通过本书深入了解Clojure的精髓,也可将本书用作参考指南,解决具体问题。
本书涵盖150多个具体实例,展示了有经验的Clojure开发者如何用这门JVM语言完成各种编程任务。解决方案全面广泛:从构建动态和应用数据库到网络通信、云计算、测试策略等,面面俱到。这些实例源于60多名Clojure开发者。
本书的每个实例不仅可以即学即用,而且其中提供的关于解决方案原理的讨论,让读者可以在模式、方法和技巧上举一反三,从而在遇到本书未提及的其他编程任务时也能游刃有余。
通过阅读本书,你可以:
掌握内建原生数据和复合数据结构;
使用Leiningen工具创建、开发和发布库;
与本地计算机交互;
管理网络通信协议和库;
掌握连接和使用各种数据库的技术;
应用Ring HTTP服务器库构建并维护动态;
解决封装、发布、配置、日志等应用任务;
进行云计算和重量级分布式数据处理;
深入研究单元测试、集成测试、模拟测试和基于属性的测试。
亲,大宗购物请点击企业用户渠道>小苏的服务会更贴心!
亲,很抱歉,您购买的宝贝销售异常火爆让小苏措手不及,请稍后再试~
非常抱歉,您前期未参加预订活动,
无法支付尾款哦!
抱歉,您暂无任性付资格