作品简介

本书由直接参与Scala开发的一线人员编写,深入介绍Scala这门结合面向对象和函数式的编程语言的核心特性和设计取舍。继第4版后,时隔一年,本书迎来重大更新,内容覆盖Scala 3.0,对新的缩进语法、并集类型、交集类型、枚举、代数数据类型、上下文参数、特质参数、扩展方法、类型族等都有详细介绍。本书适合有一定编程经验的开发者阅读,尤其是对Scala 3.0新特性感兴趣的开发者朋友。即便是不直接使用Scala的读者,也能从本书中学到大量关于函数式和面向对象的编程概念和技巧。

Martin Odersky是Scala编程语言的缔造者。他是瑞士洛桑理工学院(EPFL)的教授,同时也是Lightbend的创始人。他的研究方向是编程语言和系统,更具体地说,就是如何将面向对象和函数式编程风格有机地结合在一起。自2001年起,他的主要精力集中在设计、实现和改进Scala上。在此之前,他作为Java泛型的合作设计者参与了Java编程语言的开发,同时也是当前javac参考实现的作者。他还是ACM院士。

Lex Spoon是Semmle Ltd.的一名软件工程师。作为博士后,他在EPFL围绕着Scala开展了大约两年的工作。他拥有Georgia Tech的博士学位,在那里他的主攻方向是动态编程语言的静态分析。除Scala外,他还帮助开发了各类编程语言,包括动态语言Smalltalk、科学计算语言X10,以及支撑Semmle的逻辑编程语言。他和他的夫人一起生活在Atlanta,他们有两只猫和一只吉娃娃。

Bill Venners是Artima Inc.的总裁,Artima开发者网站的发行人,提供Scala咨询、培训、书籍和工具。他著有《深入Java虚拟机》,这是一本面向程序员讲解Java平台架构和内部实现原理的书。他在JavaWorld杂志上的专栏很受欢迎,主题涵盖Java内部实现、面向对象的设计和Jini。Bill是ScalaCenter咨询委员会的社区代表,还是测试框架ScalaTest和针对函数式、面向对象编程类库Scalactic的主要开发者和设计者。

Frank Sommers是Autospaces Inc.的创始人和总裁,该公司为金融服务行业提供自动化的工作流解决方案。在过去的12年间,Frank Sommers一直是活跃的Scala用户,几乎每天都在使用这门编程语言。

译者:高宇翔,资深软件开发工程师和系统架构师,同时也是Scala在国内的早期布道者和实践者,曾译有《Scala编程》(第1版)、《Scala编程》(第3版)、《Scala编程》(第4版),以及《快学Scala》(第1版)、《快学Scala》(第2版)等广为人知的Scala语言技术名著。

中文版审校者:

钟伦甫,Scala爱好者和早期布道者。2012年在淘宝中间件团队任职技术专家期间,用Scala编写过一款名为HouseMD的JVM诊断工具并开源。后又作为联合译者,参与了《Scala函数式编程》一书的翻译;

黄胜涛,有10年以上系统运维和8年以上软件开发经验,曾就职于携程旅行网、LOTTE,目前在上海昱极科技有限公司从事DevOps方面工作。

作品目录

  • 推荐语
  • 译者序
  • 引言
  • 第1章 一门可伸缩的语言
  • 第2章 Scala入门
  • 第3章 Scala入门(续)
  • 第4章 类和对象
  • 第5章 基础类型和操作
  • 第6章 函数式对象
  • 第7章 内建的控制结构
  • 第8章 函数和闭包
  • 第9章 控制抽象
  • 第10章 组合和继承
  • 第11章 特质
  • 第12章 包、引入和导出
  • 第13章 样例类和模式匹配
  • 第14章 使用列表
  • 第15章 使用其他集合类
  • 第16章 可变对象
  • 第17章 Scala的继承关系
  • 第18章 类型参数化
  • 第19章 枚举
  • 第20章 抽象成员
  • 第21章 上下文参数
  • 第22章 扩展方法
  • 第23章 类型族
  • 第24章 深入集合类
  • 第25章 断言和测试
  • 术语表
  • 关于作者
展开全部