Clojure经典实例

Clojure经典实例

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

通过150多个详细方案,展示了资深Cloiure开发人员是如何使用JVM语言来解决各种编程任务的。

内容简介

本书超出了介绍Clojure语法和语义的层面,展示了该语言在不同领域的应用。不仅介绍如何运用Clojure,而且还会展示这本语言很多的常见库。书中给出了添加了注释的示例代码,详细分析并解释了数百个真实世界的编程任务。

作者简介

作者Luke VanderHart,Clojure和ClojureScript开发者,目前就职于Cognitect公司(Clojure之父在该公司任CTO)。

章节目录

版权信息

内容提要

O'Reilly Media, Inc. 介绍

译者序

前言

第1章 原生数据

1.0 简介

1.1 改变字符串的大小写

1.2 清除字符串中的空白字符

1.3 利用部件构建字符串

1.4 将字符串作为字符序列

1.5 字符与整数的转换

1.6 格式化字符串

1.7 按模式查找字符串

1.8 利用正则表达式从字符串中取出值

1.9 对字符串执行查找和替换

1.10 将字符串切分成部分

1.11 基于数量为字符串加复数

1.12 在字符串、符号和关键字之间转换

1.13 利用非常大或非常小的数来保持精度

1.14 使用有理数

1.15 解析数字

1.16 数的截断和舍入

1.17 模糊比较

1.18 三角计算

1.19 根据不同的进制输入和输出整数

1.20 计算数值集合的统计值

1.21 位操作

1.22 生成随机数

1.23 操作货币

1.24 生成唯一ID

1.25 得到当前的日期和时间

1.26 用字面值来表示日期

1.27 利用clj-time解析日期和时间

1.28 利用clj-time格式化日期

1.29 比较日期

1.30 计算时间间隔的长度

1.31 生成一系列的日期和时间

1.32 利用原生Java类型生成一系列日期和时间

1.33 根据日期间的关系取得日期

1.34 处理时区

1.35 将Unix时间戳转换成Date对象

1.36 将Date对象转换成Unix时间戳

第2章 复合数据

2.0 简介

2.1 创建列表

2.2 从已有的数据结构创建列表

2.3 在列表中“添加”一个元素

2.4 从列表中“移除”一个元素

2.5 测试是否列表

2.6 创建向量

2.7 在向量中“添加”一个元素

2.8 从向量中“移除”一个元素

2.9 取得索引处的值

2.10 设置索引处的值

2.11 创建集

2.12 在集中添加和移除元素

2.13 测试集成员

2.14 使用集操作

2.15 创建映射表

2.16 从映射表中取得值

2.17 从映射表中同时取出多个键

2.18 设置映射表中的键

2.19 用复合值作为映射表的键

2.20 将映射表作为序列(或反过来)

2.21 对映射表应用函数

2.22 一个键保存多个值

2.23 合并映射表

2.24 值的比较与排序

2.25 从集合中移除重复元素

2.26 检测集合是否包含几个值中的一个

2.27 实现定制的数据结构:红黑树(第一部分)

2.28 实现定制的数据结构:红黑树(第二部分)

第3章 广义计算

3.0 简介

3.1 运行最小的Clojure REPL

3.2 交互式文档

3.3 探索命名空间

3.4 尝试库而不指明依赖关系

3.5 运行Clojure程序

3.6 从命令行运行程序

3.7 解析命令行参数

3.8 创建定制的项目模板

3.9 构建具有多态行为的函数

3.10 扩展内建的类型

3.11 用 core.async 解除消费者和生产者的耦合

3.12 用core.match为Clojure表达式制作解析器

3.13 用core.logic查询层级图

3.14 演奏儿歌

第4章 本地I/O

4.0 简介

4.1 写入STDOUT和STDERR

4.2 从控制台读入一次击键

4.3 执行系统命令

4.4 访问资源文件

4.5 复制文件

4.6 删除文件或目录

4.7 列出目录中的文件

4.8 文件的内存映射

4.9 读写文本文件

4.10 使用临时文件

4.11 在任意位置读写文件

4.12 并行文件处理

4.13 带归约的并行文件处理

4.14 读写Clojure数据

4.15 在配置文件中使用edn

4.16 将记录作为edn值发布

4.17 读取Clojure数据时处理未知的带标签字面值

4.18 从文件中读取属性

4.19 读写二进制文件

4.20 读写CSV数据

4.21 读写压缩文件

4.22 处理XML数据

4.23 读写JSON数据

4.24 生成PDF文件

4.25 生成带可滚动文本的GUI窗口

第5章 网络I/O和Web服务

5.0 简介

5.1 发出HTTP请求

5.2 执行异步HTTP请求

5.3 发出Ping请求

5.4 取得并解析RSS数据

5.5 发送邮件

5.6 用RabbitMQ实现队列通信

5.7 通过MQTT与嵌入式设备通信

5.8 并发使用ZeroMQ

5.9 创建TCP客户端

5.10 创建TCP服务器

5.11 收发UDP包

第6章 数据库

6.0 简介

6.1 连接SQL数据库

6.2 利用连接池连接SQL数据库

6.3 操作 SQL 数据库

6.4 用Korma简化SQL

6.5 用Lucene进行全文查找

6.6 用ElasticSearch建立数据索引

6.7 使用Cassandra

6.8 使用MongoDB

6.9 使用Redis

6.10 连接Datomic数据库

6.11 为Datomic数据库定义数据模式

6.12 向Datomic写入数据

6.13 从Datomic数据库中删除数据

6.14 尝试Datomic事务而不提交

6.15 遍历Datomic索引

第7章 Web应用

7.0 简介

7.1 Ring简介

7.2 使用Ring中间件

7.3 用Ring提供静态文件

7.4 用Ring处理表单数据

7.5 用Ring处理Cookie

7.6 用Ring保存会话

7.7 在Ring中读写请求和响应的头

7.8 用Compojure路由请求

7.9 用Ring执行HTTP重定向

7.10 用Liberator构建REST风格的应用

7.11 用Enlive实现HTML模板

7.12 用Selmer实现模板

7.13 用Hiccup实现模板

7.14 渲染Markdown文档

7.15 用Luminus来构建应用

第8章 性能与开发效率

8.0 简介

8.1 AOT编译

8.2 将项目打包成JAR文件

8.3 创建WAR文件

8.4 将应用作为守护进程运行

8.5 利用类型暗示减轻性能问题

8.6 用原生Java数组进行快速数学运算

8.7 用Timbre进行简单剖析

8.8 用Timbre记日志

8.9 向Clojars发布库

8.10 使用宏来简化API弃用

第9章 分布式计算

9.0 简介

9.1 用Storm构建活动推送系统

9.2 用抽取转换加载(ETL)管道来处理数据

9.3 聚合大型文件

9.4 测试Cascalog工作流

9.5 设置Cascalog任务的检查点

9.6 解释Cascalog查询

9.7 在Elastic MapReduce上运行Cascalog任务

第10章 测试

10.0 简介

10.1 单元测试

10.2 用Midje测试

10.3 通过随机输入进行彻底测试

10.4 寻找导致失败的值

10.5 运行基于浏览器的测试

10.6 追踪代码执行

10.7 用core.typed避免空指针异常

10.8 用core.typed验证Java互操作

10.9 用core.typed检查高阶函数

关于作者

关于封面

Clojure经典实例是2015年由人民邮电出版社·图灵出品出版,作者[美] Luke VanderHart。

得书感谢您对《Clojure经典实例》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
Axure RP8网站与App原型设计经典实例教程 电子书
原型设计已经是互联网行业产品设计过程中不可缺少的环节,也是检验互联网产品经理能力的标配指标。本书以Windows系统下流行的快速原型设计工具AxureRP为基础,以丰富的案例展示了Axure强大的原型设计能力。本书首先介绍为什么要进行原型设计?它到底能给我们带来什么样的好处?然后了解工作环境的构成;从第3章开始进入原型设计操作阶段,从简单的元件命名开始,到一些技巧的应用,提炼了原型设计过程中的常用
素描实例绘制详解 电子书
本书是“素描实例绘制详解”系列中的一本,通过一个个案例详细地分析构图、明暗关系、深入塑造以及整体调整各阶段需要掌握的绘画知识。通过实例将绘画中所遇到的难题一一解决,使读者在实例的学习中提升自己的绘画技能。本书是一本综合题材的绘画教程书,书中包括石膏、静物、动物、人物的绘制,所涉及的绘画题材丰富,案例详细多样。帮助读者从最基础的了解工具开始学习透视与形体、光源与色调。读者通过这本书可以快速地学习到各
UGNX完全实例解析 电子书
案例教学视频+电子教案+素材文件,适用于UG NX1847/1851及以上版本。
Flutter开发实例解析 电子书
一线移动跨端工程师,一手实战经验,通过7个完整实战项目手把手教你快速入门Flutter。
机械优化设计与实例 电子书
本书主要介绍机械优化设计方法与实例,共有9章,内容主要包括机械优化设计的基本要素及数学模型、优化设计的理论基础、常见的优化设计方法和优化设计软件简介。