ClojureWeb开发实战

ClojureWeb开发实战

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

    关注微信公众号

编辑推荐

本书专门探讨Clojure在Web开发领域的实际应用。通过阅读本书,读者既可以深入理解ClojureWeb栈的专业知识,同时又能运用这些知识来轻松构建Web应用。

内容简介

Clojure是一门Lisp方言。它通过函数式编程技术,直接支持并发软件开发,得到众多开发人员的欢迎,广泛应用于各个领域。Web开发是Clojure的主战场之一。

本书专门探讨Clojure在Web开发领域的实际应用。通过阅读本书,读者既可以深入理解Clojure Web栈的专业知识,同时又能运用这些知识来轻松构建Web应用。全书共7章,详细介绍了Clojure Web开发的各个方面,附录部分介绍了IDE的选择、Clojure快速入门以及相关的数据库技术。

本书适合各个层次的读者。如果具备一些函数式方面的编程经验,将对阅读本书有所助益,但这并不是必需的。如果你还没有真的用过Clojure,可以快速掌握如何运用这门语言来解决Web开发中的实际问题。

作者简介

作者Dmitri Sotnikov,专注开发Web应用已近十年,已开发并持续维护几个大型的Clojure库(类似Luminus框架)。

章节目录

版权信息

作者简介

内容提要

对本书的赞誉

简介

本书适合你吗?

为什么选择Clojure?

为何选Clojure来构建Web应用?

第1章 起步

1.1 环境设置

使用Leiningen管理工程

Leiningen工程文件一瞥

Leiningen的模板

使用Light Table

1.2 你的第一个工程

了解应用程序的结构

添加一些功能

添加数据模型

组合起来

收尾

你学到了什么

第2章 Clojure的Web技术栈

2.1 使用Ring来路由请求

请求处理

请求map和响应map

请求map的内容

响应map的内容

通过中间件扩充功能

适配器是什么

2.2 定义Compojure路由

访问请求参数

2.3 应用架构

程序的handler

路由请求

应用模型

应用视图

定义页面

Hiccup处理模板化页面

添加资源

Hiccup API一览

回顾留言簿程序

2.4 Compojure和Ring之后

处理重定向

管理会话

处理输入验证

添加安全机制

指定MIME类型

Noir API一览

2.5 你学到什么

第3章 服务组件Liberator

3.1 创建项目

3.2 定义资源

判定

处理

操作

声明

3.3 汇总

3.4 你学到什么

第4章 访问数据库

4.1 使用关系型数据库

访问数据库

定义参数map

指定驱动直连

定义JNDI字符串

创建表

查询记录

插入记录

更新现有记录

删除记录

事务

4.2 生成报表

配置PostgreSQL数据库

生成报表

显示报表

4.3 你学到什么

第5章 相册

5.1 开发流程

5.2 相册有什么

代码架构

5.3 创建应用程序

5.4 程序数据模型

配置数据库

定义数据模型

5.5 任务1:账户注册

将用户写入数据库

5.6 任务2:登入登出

5.7 任务3:上传图片

生成缩略图

将文件保存到用户目录

在数据库保存图片清单

重构通用代码

5.8 任务4:显示图片

5.9 任务5:删除图片

Ajax和Servlet Context

5.10 任务6:删除账户

5.11 你学到什么

第6章 收尾

6.1 添加一些样式

通过JavaScript添加颜色

6.2 单元测试

测试API

测试程序

6.3 日志

6.4 程序配置文件

6.5 打包应用

独立部署

运行uberjar

通过HTTP Kit运行

通过leiningen trampoline运行

通过daemon运行

应用服务部署

Tomcat部署

Immutant部署

Heroku部署

6.6 你学到什么

第7章 混合

7.1 使用Selmer

Selmer有什么区别?

创建模板

使用filter

使用模板标签

自定义标签

继承模板

扩展模板

包含模板

将相册转换成Selmer

转换主页

转换注册页

转换上传页面

7.2 升级为ClojureScript

ClojureScript概要

JavaScript交互

并发

7.3 SQL Korma

7.4 创建程序模板

7.5 你学到什么

Luminus 框架

结束语

附录1 选择IDE

安装Eclipse

安装Counterclockwise插件

配置Eclipse

安装Emacs

替代品

Cursive

VimClojure

附录2 Clojure入门

函数式理念

状态维护

实现代码复用

向并发借力

数据类型

使用函数

匿名函数

命名函数

高阶函数

闭包

流表达式

惰性化

结构化代码

非结构化数据

命名空间

:use关键字

:require关键字

动态变量

召唤Java

引入类

实例化类

调用方法

动态多态

全局状态怎么样

为我们写代码的代码

REPL

综述

附录3 面向文档的数据库访问

选择正确的数据库

一致性

可用性

分区容忍性

使用CouchDB

Clutch库

连接到数据库

存储文档

检索单个文档

检索多个文档

删除文档

使用MongoDB

连接数据库

插入记录

选择记录

更新记录

删除记录

看完了

版权声明

ClojureWeb开发实战是2015年由人民邮电出版社出版,作者[美] Dmitri Sotnikov。

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

你可能喜欢
鸿蒙应用开发实战 电子书
本书为华为鸿蒙系统HarmonyOS开发图书,以JavaScript为开发语言,提供完整源代码。
Unity 3D ShaderLab 开发实战详解(第3版) 电子书
1.一本专一介绍底层渲染的图书 。对着色器的概念、渲染流水线以及图形存储器的解释,扩展了在阴影批处理和渲染优化方面的内容。同时,针对不好理解的体积阴影和体积光,改成了在世界坐标空间内实现的程序。 2.针对Unity 5.x全新改版,删减了一些第2版中难懂且没有实际意义的内容。 3.书中的彩图文件和工程文件全部提供给读者免费下载。
微信小程序开发实战(第2版) 电子书
本书是针对Web前端开发人员编写的一本快速掌握微信小程序开发的教程。本书通过通俗易懂的语言、丰富实用的案例,讲解微信小程序的开发技术。本书共8章,第1章讲解微信小程序的入门知识,介绍微信小程序的特点和发展前景;第2章和第3章分别讲解微信小程序的页面制作和页面交互;第4章和第5章讲解微信小程序的常用API;第6章讲解综合项目“点餐”微信小程序;第7章讲解微信小程序开发进阶;第8章讲解基于uni-ap
深入React技术栈 电子书
全面讲述React技术栈的原创图书,pure render专栏主创倾力打造,覆盖React、Flux、Redux及可视化等内容。
30天App开发从0到1:APICloud移动开发实战 电子书
本书围绕APICloud平台,全面、系统、细致地讲述了App开发的相关内容,涉及平台工作原理、内部实现机制和应用开发技巧。本书涵盖了APICloud应用开发的知识,包括基础知识、关键技术、开发技巧和行业方案,并从实践角度出发,通过大量的实例代码、详细的操作步骤和丰富的开发截图,帮助开发人员迅速掌握APICloud应用开发,有能力制作出好的App。本书是APICloud开发人员的入门指南,并配有免费