Scala权威入门指南

本文概述

介绍

Scala入门指南1

Scala是由Martin Odersky设计的, Martin Odersky是瑞士洛桑联邦理工学院(EPFL)的教授, 也是一位德国计算机科学家。 Martin从2001年开始致力于创建Scala, 并于2004年首次发布。

Scala代表可扩展语言。它是一种通用的, 面向对象的语言, 与Java编程语言有一些共同点。它为功能编程提供支持。 Scala的许多设计决策旨在解决Java编程语言的缺点。

Scala提供的一些功能是:

  • Scala的源代码可以编译为Java字节码, 因此可以在Java虚拟机(JVM)上执行。
  • 它提供了与Java的语言互操作性, 因此可以在Scala或Java代码库中引用以任何一种语言编写的库。
  • 与Java一样, Scala也使用花括号语法。
  • 它具有功能性编程语言的许多功能, 如Scheme, Standard Machine Learning和Haskell, 包括currying, 类型推断, 不变性, 惰性评估和模式匹配。
  • 使用JavaScript支持Web应用程序。
  • 与Java不同, Scala还支持运算符重载, 可选参数, 命名参数和原始字符串。

关于Scala的一个有趣的事实是, 由于它的可伸缩性和在后端操作中使用的能力, 它已被Apple, Twitter, 沃尔玛和Google等公司广泛使用。

在Jupyter Notebook中设置Scala

Jupyter笔记本是计算机科学中使用最广泛的工具, 尤其是在数据科学领域。在spylon-kernel的帮助下, 它也支持Scala开发。

注意:对于jupyter笔记本电脑的新手来说, 请随时阅读此综合教程。

在jupyter笔记本中设置Scala环境不是火箭科学。因此, 我们仅需几个步骤就可以对其进行快速设置。

  • 首先, 你将安装spylon内核。

    pip install spylon-kernel(Python 2)
    pip3 install spylon-kernel(Python 3)

  • 接下来, 你将创建一个内核规范, 该规范将允许你在jupyter Notebook中选择scala内核。

    python -m spylon_kernel安装(Python 2)
    python3 -m spylon_kernel安装(Python 3)

  • 然后, 作为重要的一步, 你将安装pyspark和findspark, 因为spylon内核还安装了一些spark组件。

    pip install pyspark findspark(Python 2)
    pip3 install pyspark findspark(Python 3)

  • 最后, 启动你的jupyter笔记本, 然后选择kernel作为spylon-kernel, 你一切顺利!
Scala入门指南2
  • 让我们运行一小段代码来测试Scala内核是否已正确配置。
val x = 2
val y = 3
x*y
x: Int = 2
y: Int = 3
res1: Int = 6

大!因此, 从上述输出中可以看到, 你已成功在jupyter Notebook中配置Scala环境。

基本语法

让我们开始打印Hello, World!在斯卡拉。

print("Hello, World!")
Hello, World!

如你所见, 它是如此简单, 只需执行一条打印命令, 然后将输入作为参数即可。

现在, 让我们看一下Scala中与语法相关的一些细节:

  • Scala区分大小写, 这意味着标识符srcmini和srcmini在Scala中将具有不同的含义。
  • 在Scala中, 所有类名的首字母均应为大写。如果将许多单词组合在一起构成类的名称, 则每个单独单词的首字母应大写。例如, 类MyScalasrcminiTutorial。
  • 与类名称相比, Scala中的方法名称的工作方式略有不同, 主要是为了将方法名称与类名称区分开。方法名称应以小写字母开头(源)。如果将多个单词组合在一起形成方法的名称, 则每个内部单词的首字母应大写。例如, def firstsrcminiScalaTutorial()
  • 在Scala中, 程序文件的名称应与对象名称完全匹配。保存文件时, 需要使用对象名称保存文件, 并将.scala附加到名称末尾。例如, 假设ScalaTutorial是对象名称。然后, 该文件应另存为ScalaTutorial.scala。

    注意:如果文件名和对象名不匹配, 则你的程序将甚至无法编译。

  • 最后, 像大多数编程语言功能一样, Scala程序的处理也从main()方法开始, 这是每个Scala程序的关键部分。

下图显示了Scala中的保留字, 这些保留字不能用作常量或变量或任何其他标识符。

Scala入门指南3

(资源)

资料类型

Scala中的数据类型几乎与许多其他编程语言(如C, C ++, Java, Python等)相同, 并且具有相似的内存占用量和精度。

最后, 让我们看一下Scala中存在的一些数据类型:

  • Int:32位有符号(可以同时取正值和负值)的值的范围是$ 2 ^ {-31} $到$ 2 ^ {31}-1 $
  • 字节:8位带符号值的范围是$ 2 ^ {-7} $到$ 2 ^ {7}-1 $
  • 短:16位带符号值的范围是$ 2 ^ {-15} $到$ 2 ^ {15}-1 $
  • Long:64位带符号值的范围是$ 2 ^ {-63} $到$ 2 ^ {63}-1 $
  • 浮点数:32位(单精度浮点数)和64位(双精度浮点数)
  • 字符:16位无符号(只能采用正值)Unicode字符。

其他一些数据类型是String, Boolean, Null。

总结

祝贺你完成本教程。

对于对学习Scala感兴趣的初学者来说, 这是一个很好的起点。

有大量与Scala相关的信息仍然无法理解, 例如if / else, for循环, Scala中的各种运算符等, 这些将在以后的教程中进行介绍, 敬请期待!

参考文献:

  • Scala(编程语言)
  • Scala教程

请随时在下面的评论部分中提出与本教程相关的任何问题。

微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?