介绍

2012年秋天,超过五万人注册了 Martin Odersky 先生在 Coursera 上开设的
Functional Programming Principles in Scala 课程。
这是一个巨大的数字。
他们可能是第一次接触 Scala、函数式编程。
2013年,这个课程又开始了,并将更多的学生和开发者带入了 Scala 和函数式编程的世界。

如果你正在看这篇文章,很可能你也是其中之一,或者通过其他方式已经学习 Scala 了。
不管怎样,如果你对探索这门优美的语言感到兴奋,但又不知道该如何去学,那这本书就是为你准备的。

尽管 Coursera 上的这门课程已经提供了很多材料来介绍 Scala,
但其时间有限,很难把所有东西都解释清楚,
对于初学者的你,Scala 的一些特性看起来就像魔法一样。
可能你知道如何使用它们,但无法完全掌握其背后的原理,
更重要的是,你无法了解为什么这样做就是对的。

自从这门课程的第一次开设,我就开始 撰写一系列博客,
意在把事情理清楚,移除初学者心中的问号。
这份电子书就基于这系列博客。
鉴于超多人都给出了正面评价,我决定把所有文章编译成书。

在这本书里,我会解释 Scala 语言的一些特性,一些我曾经遇到过麻烦的特性。
之前大部分时候,我找不到对这些特性的好的解释,只能摸石头过河。
为了不让读者步我的后尘,我会在写作中给出这些特性的惯例用法。

介绍的已经差不多了。
在开始这本书之前,读者要知道,虽然并不要求参与过 Coursera 上的那门课程,
但是之前上过 Coursera 的 Scala 课程,会有利于本书的阅读,
我时不时也会引用课程上的一些知识点。