Scala - 概述

Scala 是 Scalable Language 的缩写,是一种混合函数式编程语言。 它是由 Martin Odersky 创建的。 Scala 流畅地集成了面向对象和函数式语言的特性。 Scala 被编译为在 Java 虚拟机上运行。 许多依赖 Java 开发关键业务应用程序的现有公司正在转向使用 Scala 来提高他们的开发效率、应用程序可扩展性和整体可靠性。

在这里,我们提出了使 Scala 成为应用程序开发人员首选的几点。

Scala 是面向对象的

Scala 是一种纯面向对象的语言,因为每个值都是一个对象。 对象的类型和行为由类和特征描述,这些将在后续章节中解释。

类通过子类化 和灵活的基于mixin 的组合 机制进行扩展,作为多重继承的干净替代品。

Scala 是函数式的

Scala 也是一种函数式语言,因为每个函数都是一个值,每个值都是一个对象,所以最终每个函数都是一个对象。

Scala 提供了一种轻量级的语法来定义匿名函数,它支持高阶函数,它允许函数嵌套,并且支持currying。 这些概念将在后续章节中解释。

Scala 是静态类型的

与其他一些静态类型语言(C、Pascal、Rust 等)不同,Scala 不希望您提供冗余类型信息。 在大多数情况下,您不必指定类型,当然也不必重复。

Scala 在 JVM 上运行

Scala 被编译成 Java 字节码,由 Java 虚拟机 (JVM) 执行。 这意味着 Scala 和 Java 有一个共同的运行时平台。 您可以轻松地从 Java 迁移到 Scala。

Scala 编译器将您的 Scala 代码编译成 Java 字节码,然后可以通过 'scala' 命令执行。 'scala' 命令类似于 java 命令,因为它执行编译的 Scala 代码。

Scala 可以执行 Java 代码

Scala 使您能够使用 Java SDK 的所有类以及您自己的自定义 Java 类或您最喜欢的 Java 开源项目。

Scala 可以做并发和同步处理

Scala 允许您以有效的方式表达通用编程模式。 它减少了行数并帮助程序员以类型安全的方式进行编码。 它允许您以不可变的方式编写代码,这使得应用并发和并行(同步)变得容易。


Scala 与 Java

Scala 有一组与 Java 完全不同的特性。 其中一些是 −

  • 所有类型都是对象
  • 类型推断
  • 嵌套函数
  • 函数就是对象
  • 支持领域特定语言 (DSL)
  • 特征
  • 关闭
  • 受 Erlang 启发的并发支持

Scala Web 框架

Scala 无处不在,在企业 Web 应用程序中非常重要。 您可以查看一些最流行的 Scala Web 框架 −