Scala 是一个很有吸引力的选择。 Scala 的语法简洁, 跟 Java 的“陈词滥调”比起来让人耳目一 新。它运行在 Java 虚拟机(Java virtual machine ,JVM)上,提供对大量库和工具的访问。并 且,Scala 不仅仅瞄准 JVM。ScalaJS 项目可以生成 JavaScript 代码,使你能够使用非 JavaScript 语言同时编写 Web 应用程序的服务器端和客户端部分。 Scala 既拥抱了函数式编程风格, 又没 放弃面向对象编程,为你提供了一个通往新范式的渐进式学习路径。 Scala REPL 可以让你快 速地进行实验, 使得学习 Scala 变得非常愉快。最后但同样重要的是, Scala 是静态类型语言, 允许编译器发现错误,这样就不至于要等到程序运行起来之后才能发现这些错误, 造成时间 上的浪费。编译器还可以帮助你编写无错误的代码, 尽可能地推断类型, 这样就不必编写(或 读取)类型。

Scala之父Martin Odersky作序推荐的Scala速学版(第3版)

Scala之父Martin Odersky作序推荐的Scala速学版(第3版)出版_Scala

1.Scala之父Martin Odersky作序推荐,Scala入门好书,涵盖Scala 3,作者Java大神霍斯特曼;

2.开篇快速介绍Scala的基础功能。此外,它还涵盖了许多更“高级”的概念,并最终深入到非常高级的内容;

3.每章都标记了一个级别标签,告诉你本章的难易程度,以及它是面向应用程序员还是库设计者;

4.提供丰富的示例,还给出了大量注释、提示和警告,这些都是作者实际经验的总结,对编程实践大有裨益。

这是本书的第 3 版,作者针对 Scala 3 进行了全面的更新。Scala 3 为这门语言带来了重大变化。 通过移除尴尬的边界情况,经典特性变得更加规范,高级功能现在更容易学习,甚至还添加了 以前只能通过宏才能使用的更强大的功能。一种“安静语法”(类似于 Python 语法)看起来很 简单,现在已经成为编写 Scala 3 代码的首选方式。

作者写这本书是为那些迫不及待想马上开始用 Scala 编程的读者准备的。

Scala 语言因为难以阅读而出名, 当库的提供者不太关注可用性或者假定程序员对范畴论很 精通时,这当然是事实。我假定你熟悉面向对象编程, 本书涵盖了基本的函数式编程所需的内 容,在复杂性上与 Java 流类似,但事物总有两面性。我的目标是教你写出令人愉快的 Scala 代 码,而不是难以理解的代码。

Scala 是一门庞大的语言,但你可以在不了解所有细节的情况下有效地使用它。 Scala 之 父马丁 ·奥德斯基(Martin Odersky)为应用程序员和库设计者划分了不同的专业水平, 如下 表所示:

Scala之父Martin Odersky作序推荐的Scala速学版(第3版)出版_后端_02

对于每一章(偶尔个别章节),我都会指出所需的经验级别,大致的递进顺序为 A1 、L1 、 A2 、L2 、A3 、L3。即使你不想设计自己的库,了解 Scala 为库设计者提供的工具也可以让你成 为更高效的库用户。

本书是一本系统地介绍Scala语言的入门图书,针对Scala 3进行了全面的更新,不仅覆盖了Scala语言的基础知识,而且涵盖了许多更复杂的概念,并最终深入到非常高级的内容。

本书共分20章,首先介绍了Scala语言的基础概念,以及控制结构和函数、数组操作、映射、Option、元组、类、对象和枚举、包、导入和导出、继承、文件和正则表达式等关键概念;其次介绍了特质、运算符、高阶函数、容器、模式匹配、注解、Future、类型参数、高级类型、上下文抽象和类型级编程等高级内容。每章都标记了一个级别标签,告诉你本章的难易程度,以及它是面向应用程序员还是库设计者。本书以紧凑的形式呈现内容,提供了许多实用的示例代码,还给出了基于作者实际经验的提示、注意和警告。

本书适合有一定编程经验、对Scala感兴趣,并希望尽快掌握Scala核心概念和用法的开发者阅读。

关于作者

凯·S. 霍斯特曼(Cay S. Horstmann)是《Java核心技术速学版(第3版)》(Core Java for the Impatient, Third Edition)的作者,也是 Core Java, Volumes I and II, Twelfth Edition 的主要作者,他还为专业编程人员和计算机科学专业的学生撰写了十多本书。他是美国圣何塞州立大学计算机科学专业的荣誉退休教授,也是一名Java Champion。

本书目录

Scala之父Martin Odersky作序推荐的Scala速学版(第3版)出版_后端_03

内容抢先读

Scala之父Martin Odersky作序推荐的Scala速学版(第3版)出版_scala_04