Clojure编程乐趣 封面

Clojure编程乐趣

暂无评分
章节数
18
ISBN
9787115319494

标签

内容简介

《Clojure编程乐趣》是《The Joy of Clojure》的中文译本,由人民邮电出版社于2013年引进出版,郑晔翻译。它不是一本零基础入门读物,也不是罗列API的编程操作手册,而是沿着Clojure的语言哲学展开深入探究,引导读者理解函数式的程序设计方式,体会用Clojure写出优美软件的乐趣。全书分为5个部分共13章:第1部分(第1—3章)讲Clojure背后的设计思想与语言哲学,介绍基础语法与核心概念,并带领读者动手做小练习;第2部分(第4—5章)系统梳理Clojure的标量类型与集合等数据类型;第3部分(第6—7章)讲解函数式编程的特性,以及不可变性与惰性等要点;第4部分(第8—11章)进入宏、代码与数据组合、调用Java以及并发编程等进阶话题;第5部分(第12—13章)讨论性能问题与由此引发的思考。书中强调Clojure“代码即数据”“简单、专注、实用”的设计取向,也说明了它与JVM生态、Java互操作和并发模型的关系。适合已具备一定编程经验、想借Lisp方言真正理解函数式思维的读者。

编辑推荐

在Clojure的中文读物中,这本书的定位相当特别:它不讲“怎样快速跑起来”,而是讲“为什么这样设计”。作者Michael Fogus与Chris Houser都是Clojure社区的长期实践者,全书把语言哲学、数据类型、不可变性与惰性、宏、Java互操作、并发与性能串成一条完整的思考路径,读者读到的不是一堆用法,而是一套判断程序设计好坏的标准。郑晔的译文保持了技术表述的准确,术语处理也较为克制,读起来不别扭。值得一提的是,书中关于宏和代码即数据的章节,对习惯命令式与面向对象的读者冲击很大,常被读者视为“打开新世界的一章”。如果你已经能写简单Clojure代码,却总觉得写出来的东西像换了语法的Java,这本书正好能帮你转到函数式的思维轨道上。另外,该书后有扩充版的第2版,内容更全,但2013年版篇幅紧凑、主线清晰,作为第一遍通读依然十分合适。

适合谁读

适合

  • 已掌握至少一门主流语言、想理解函数式编程本质的程序员
  • 正在使用或准备使用Clojure、希望摆脱“换了语法的Java”写法的人
  • 对Lisp方言、宏与代码即数据感兴趣的开发者
  • 需要在JVM上进行并发编程、想了解不可变数据价值的中高级工程师

不适合

  • 完全没有编程经验、需要从变量与循环学起的零基础读者
  • 只想查API或临摹代码的速查型读者,本书不以操作为主线
  • 急于在一周内上手做项目、不需要理解设计原理的人

阅读建议

  1. 建议先通读第1—3章建立语言哲学与基础,再按需深入后续章节,不必严格顺序推进。
  2. 读每一章都打开REPL跟着敲示例,宏与惰性等章节尤其需要动手验证才能体会。
  3. 若已有Java经验,可在读第10章时对照自己的旧代码,思考哪些地方能用不可变数据重构。
  4. 读完第1版后如觉不足,可再对照第2版补充面向数据编程与性能调优部分。

出版社简介

人民邮电出版社 中国 · 成立于 1953 年

人民邮电出版社以科技、计算机与信息通信类图书见长,并由此延伸至摄影、艺术、软件学习与励志成长等门类,形成较为多元的出版方向。库内图书既涵盖《重构与模式(修订版)》《华为交换机学习指南(第二版)》等计算机与通信技术读物,也收录《小王子(中英法彩绘典藏纪念版)》《了不起的盖茨比》《假如给我三天光明》等双语典藏类作品;《北京十年:1980-1990》与《鬼刀 WLOP个人插画作品集》则体现其在摄影与艺术领域的布局。作者资源包括安东尼·圣埃克苏佩里、海伦·凯勒、Joshua Kerievsky、王达、张兆增与WLOP等。

目录

  1. 第1部分 基础
  2. 第1章 Clojure哲学
  3. 第2章 Clojure疾风式教程
  4. 第3章 小试牛刀
  5. 第2部分 数据类型
  6. 第4章 标量
  7. 第5章 集合
  8. 第3部分 函数式编程
  9. 第6章 函数式编程特性
  10. 第7章 不可变性与惰性
  11. 第4部分 进阶主题
  12. 第8章 宏
  13. 第9章 组合数据与代码
  14. 第10章 Clojure与Java互操作
  15. 第11章 并发编程
  16. 第5部分 性能与思考
  17. 第12章 性能
  18. 第13章 思考与结语

常见问题

这本书适合零基础学Clojure的人吗?
不太适合。作者明确表示本书既不是初学指南,也不是操作手册,建议先掌握基本语法和至少一门编程语言,再来读它理解函数式设计思想,收获会更大。
这本书和《Clojure编程》是同一本吗?
不是。本书是Michael Fogus与Chris Houser所著《The Joy of Clojure》的中文版;《Clojure编程》(Clojure Programming)由Chas Emerick等人所著、电子工业出版社出版,是另一本书,两者常被混淆。
第1版和第2版有什么区别?
2013年第1版为5部分13章、318页;2017年第2版扩充为6部分17章、442页,新增面向数据编程、性能与思考方式等内容,译者增加了艾广,ISBN为9787115443298。
需要什么前置知识?
最好熟悉一门主流语言(如Java、Python),并对JVM有基本了解。书中会涉及Java互操作与并发概念,完全不了解JVM的读者需要额外补课。
书里的代码现在还能运行吗?
书中示例基于较早期的Clojure版本,核心概念与大部分写法至今仍适用,但部分库与工具链已有变化,建议使用较新的Clojure环境,遇到报错时查阅官方文档对照调整。

读者评论

查询本书

本站为索引目录:「全网查询」由您发起、在您的浏览器中运行,所列入口均指向第三方站点,请自行判断可用性。

同类高分