Scala基础入门

2015/07/01 Scala

Scala基础入门

Scala这个名字来源于“scalable language”,即“可伸缩的语言”。之所以这样命名,是因为它的设计目标随着用户的需求一起成长。Scala可被广泛应用于各种编程任务,从编写小型的脚本到构建巨型系统,它都能胜任。

为什么选择Scala

Scala 是一门满足现代软件工程师需求的语言;它是一门静态类型语言,支持混合范式;它也是一门运行在 JVM 之上的语言,语法简洁、优雅、灵活。Scala 拥有一套复杂的类型系统,Scala 方言既能用于编写简短的解释脚本,也能用于构建大型复杂系统。这些只是它的一部分特性,下面我们来详细说明。

  • 运行在 JVM 和 JavaScript 之上的语言 Scala 不仅利用了 JVM 的高性能以及最优化性,Java 丰富的工具及类库生态系统也为其所用。不过 Scala 并不是只能运行在 JVM 之上! Scala.js(http://www.scala-js.org )正在尝试将其迁移到 JavaScript 世界。
  • 静态类型 在 Scala 语言中,静态类型 (static typing)是构建健壮应用系统的一个工具。Scala 修正了 Java 类型系统中的一些缺陷,此外通过类型推演(type inference)也免除了大量的冗余代码。
  • 混合式编程范式——面向对象编程 Scala 完全支持面向对象编程 (OOP)。Scala 引入特征 (trait)改进了 Java 的对象模型。trait 能通过使用混合结构 (mixin composition)简洁地实现新的类型。在 Scala 中,一切都是对象,即使是数值类型。
  • 混合式编程范式——函数式编程 Scala 完全支持函数式编程 (FP),函数式编程已经被视为解决并发、大数据以及代码正确性问题的最佳工具。使用不可变值、被视为一等公民的函数、无副作用的函数、高阶函数以及函数集合,有助于编写出简洁、强大而又正确的代码。
  • 复杂的类型系统 Scala 对 Java 类型系统进行了扩展,提供了更灵活的泛型以及一些有助于提高代码正确性的改进。通过使用类型推演,Scala 编写的代码能够和动态类型语言编写的代码一样精简。
  • 简洁、优雅、灵活的语法 使用 Scala 之后,Java 中冗长的表达式不见了,取而代之的是简洁的 Scala 方言。Scala 提供了一些工具,这些工具可用于构建领域特定语言 (DSL),以及对用户友好的 API 接口。

安装和配置

scala 安装 https://www.scala-lang.org/

检验Scala是否安装成功。

scala -version
Welcome to Scala 2.13.10 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_201).
Type in expressions for evaluation. Or try :help.

Hello World

以下是用 Scala 编写的典型 Hello World 程序:

object HelloWorld {
    def main(args: Array[String]): Unit = {
        println("Hello, world!")
    }
}

将以上代码保存为 HelloWorld.scala 文件,执行以上 scala 程序:

$ scalac HelloWorld.scala  // 把源码编译为字节码
$ scala HelloWorld  // 把字节码放到虚拟机中解释运行

Search

    微信好友

    博士的沙漏

    Table of Contents