上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
第1章
一门可伸缩的语言
Scala这个名字来源于“scalable language”,即“可伸缩的语言”。之所以这样命名,是因为它的设计目标随着用户的需求一起成长。Scala可被广泛应用于各种编程任务,从编写小型的脚本到构建巨型系统,它都能胜任。[1]
Scala很容易上手。它运行在标准的Java平台上,可以与所有Java类库无缝协作。它很适合编写将Java组件组装在一起的脚本。不过用Scala编写可复用组件,并使用这些组件构建大型系统和框架时,更能体现出它的威力。
从技术上讲,Scala是一门综合了面向对象和函数式编程概念的静态类型的编程语言。从很多不同的角度看Scala,我们都能发现面向对象和函数式编程两种风格的融合,这一点可能比其他任何广泛使用的编程语言都更为突出。在可伸缩性方面,这两种编程风格的互补性非常强。Scala的函数式编程概念让它很容易用简单的组件快速构建出有趣的应用。而它的面向对象编程概念又让它能够轻松地构造出更大的系统,并不断地适配新的要求。通过这两种编程风格的结合,Scala让我们能够表达出各种新式的编程模式和组件抽象。同时,我们的编程风格也变得清晰和简练。正因为它超强的可塑性,用Scala编程会非常有趣。
作为全书的第1章,本章将回答这个问题:“为什么要使用Scala?”我们将概括性地介绍Scala的设计和背后的原理。通过学习本章,你应该能对Scala是什么,以及它能够帮你完成哪类任务,有基本的感性认识。尽管本书是Scala的教程,单就本章而言,并不能算作教程的一部分。如果你已经迫不及待想现在就开始写Scala代码,请翻到第2章。