前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >豆瓣9.5分,它是Scala领域当之无愧的王者之作!

豆瓣9.5分,它是Scala领域当之无愧的王者之作!

作者头像
博文视点Broadview
发布2023-05-19 19:22:07
3130
发布2023-05-19 19:22:07
举报
文章被收录于专栏:博文视点Broadview

今天博文菌要给大家带来一部蜚声世界的Scala编程圣经,它就是由Scala 语言缔造者Martin Odersky编写的——

  《Scala编程》  

Programming in Scala

本书全面涵盖了整个编程语言、重要类库及其背后理念,全面且强大,是Scala领域当之无愧的王者之作

上市12年来,本书紧跟语言版本持续迭代,不断以豆瓣评分8.99.29.4的成绩刷新着领域的天花板!

其中第三版的中文版更是以9.5高分傲视群雄

今天,博文菌要宣布,时隔三年后,这部长青经典之作迎来了又一次的重大升级——增补 Scala 2.13 内容,《Scala编程(第4版)》重磅上市!

▼扫码获取本书详情▼

—— Scala ——

一门按需伸缩的语言

Scala 这个名字来源于“scalable language”,即“可伸缩的语言”。之所以这样命名,是因为它的设计目标随着用户的需求一起成长。

Scala 可被广泛应用于各种编程任务,从编写小型的脚本到构建巨型系统,它都能胜任。Scala 很容易上手。它运行在标准的 Java 平台上,可以与所有 Java 类库无缝协作。它很适合编写将 Java 组件组装在一起的脚本。不过用 Scala 编写可复用组件,并使用这些组件构建大型系统和框架时,更能体现出它的威力。

从技术上讲,Scala 是一门综合了面向对象和函数式编程概念的静态类型的编程语言。从很多不同的角度看 Scala,我们都能发现面向对象和函数式编程两种风格的融合,这一点可能比其他任何广泛使用的编程语言都更为突出。

在可伸缩性方面,这两种编程风格的互补性非常强。Scala 的函数式编程概念让它很容易用简单的组件快速构建出有趣的应用。而它的面向对象编程概念又让它能够轻松地构造出更大的系统,并不断地适配新的要求。通过这两种编程风格的结合,Scala 让我们能够表达出各种新式的编程模式和组件抽象。同时,我们的编程风格也变得清晰和简练。正因为它超强的可塑性,用 Scala 编程会非常有趣。

—— 全新升级 ——

为下一个十年打好基础

跟第 3 版相比,第 4 版增补了Scala 2.13的内容:

在标准库中引入了全新的集合类库,吸取了大量来自实战的经验教训,以简化为目标做了重新设计。

Scala 2.13 中最主要的改动,是为了给 Scala 3 打基础而几乎重写的集合框架。新的集合将支持交叉编译到 Scala 2 和 Scala 3,使用新集合类库的代码将无疑为下一个十年打好基础。

当所有人对下一个版本的 Scala 都充满期待时,不失为入手《Scala 编程》开始学习的良好契机!

—— 鸿篇巨制 ——

拓宽你的知识边界

这本书的分量,除 Martin Odersky 的亲自背书和显而易见的篇幅之外,最值得一提的,是它不仅全面覆盖了 Scala 几乎所有的语言特性,还从语言开发者的视角,向我们介绍了这些语言特性和设计取舍背后的原因,以及要解决的问题。

这是《Scala 编程》跟其他林林总总的 Scala 图书最大的区别。

从工具和工具书的角度来看,你也许会觉得 :编程语言就是拿来干活儿的,一本编程语言的入门书,当然就是要把怎么用讲明白,让我高效地完成手中的工作,其他都是次要的。

这里给大家分享一个本书译者高宇翔老师的心得 :

语言除了表达(让计算机和其他人类明白),更是思维的载体。学习一门编程语言,局部功利的因素当然有,但更多的,是通过这门语言,拓宽你的知识边界

语言是手段,不是目的。所以,不论你是否从事 Scala 编程工作,希望这本书,都能够带给你不一样的世界和认知。

关于Java程序员

Java之父James Gosling说过“如果让我在Java之外选一门语言,我会选Scala”,它是面向对象与函数式编程的完美融合。

虽然大部分人都是在 Java 平台上使用 Scala 的,但本书并不假定你了解 Java 。如果你是Java 程序员,阅读本书,你将接触到来自函数式编程领域和高阶面向对象领域的许多概念。我们相信,通过学习 Scala,以及 Scala 背后的观念,你将成为一名更好的程序员。

本书对组成 Scala 的各个语法结构的解释都很深入,会给出示例解释 Scala 与 Java 的不同。如果你是从 Java 来到 Scala 的,最具挑战的可能是 Scala 的类型系统(比 Java 的类型系统更为丰满)和 Scala对函数式编程的支持。

但Scala并非银弹,不能魔法般地让你更加高产。要做出实际的进步,得根据实际需求有选择地应用 Scala,这需要学习和实践。

本书的目标是循序渐进地引导你逐步学习和掌握 Scala。这会是一次有收获的智力旅程,能帮助你拓展知识领域并对程序设计有新的、不一样的思考。

最后,希望你能通过 Scala 编程获得快乐和启发。

关于本书作译者

● Martin Odersky,Scala之父,瑞士洛桑理工学院(EPFL)教授,Lightbend创始人,参与设计了Java泛型,还是当前javac编译器参考实现的原作者。

● Lex Spoon,Square公司的软件工程师,在EPFL开展了为期两年的Scala编程工作。

● Bill Venners,Artima公司总裁,Scala Center咨询委员会的社区代表,测试框架ScalaTest和针对函数式、面向对象编程类库Scalactic的主要开发者和设计者。

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

▊《Scala编程(第4版)》

【德】Martin Odersky,【美】Lex Spoon,Bill Venners  著

高宇翔 译

  • 由Scala缔造者精心编写的领域圣经
  • 紧跟语言版本持续迭代的长青经典

本书由直接参与 Scala 开发的一线人员编写,因而对原理的解读和对应用的把握更加值得信赖。

帮助读者能够全面了解和掌握 Scala 编程语言的核心特性,并能够深入理解 Scala 这门语言在设计取舍背后的动因。即便是不直接使用Scala 的读者或非一线编程从业者,也能从本书中学到大量关于函数式和面向对象的编程概念和技巧。

(扫码了解本书详情)

▼扫码进入本书交流群▼

与广大群友共同学习成长

代码语言:javascript
复制
 如果喜欢本文欢迎 在看丨留言丨分享至朋友圈 三连
 热文推荐  
为了通关《魔塔》,我把动态规划算法都用上了
Python入门书单,新年全力扬帆
用AI「驯服」人类幼崽,手头有娃的可以试试
Android开发时的多点触控是如何实现的?

▼点击阅读原文,获取本书详情~

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-01-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 博文视点Broadview 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档