Это ключевые моменты из книги Programming in Scala, Second Edition, написанной Мартином Одерски, Лексом Спуном и Биллом Веннерсом. Я хотел отметить некоторые ключевые моменты. Они могут показаться сломанными и не иметь особого смысла, если вы не читали книгу. Это для личного ознакомления. Не стесняйтесь исправлять меня, если я что-то неправильно интерпретировал в этом посте.

Глава 2. Первые шаги в Scala

1. Научитесь использовать интерпретатор Scala

  • Попробуйте некоторые выражения в командной строке Scala.
  • Пакеты в Scala похожи на пакеты в Java. Они разделяют глобальное пространство имен и предоставляют механизм сокрытия информации.
  • Все примитивные типы Java имеют соответствующие классы в пакете Scala.

2. Определите некоторые переменные

  • Два вида переменных — vals и vars
  • Val похожа на final переменную в Java — ее нельзя переназначить.
  • Переменная, напротив, похожа на неконечную переменную, которую можно переназначить.
  • В Scala есть вывод типов.
  • Явная аннотация типа может гарантировать, что компилятор Scala выведет тип, который вы хотите, а также полезную документацию.
  • В Scala вы указываете тип переменной после ее имени, разделенного двоеточием.

3. Определите некоторые функции

  • Определения функций начинаются с def.
  • Знак равенства, который стоит перед телом функции, намекает на функциональное мировоззрение: функция определяет выражение, результатом которого является значение.
  • Тип результата Scala может или не может быть явно упомянут в зависимости от того, можно ли вывести результат.
  • Если функция состоит из одного оператора, фигурные скобки можно не указывать.
  • Функция, которая не принимает параметров и не возвращает ничего интересного:

scala› defgreet() = println("Hello, world!")greet: ()Unit

  • Тип результата Unit указывает, что функция не возвращает интересного значения.

4. Напишите несколько сценариев Scala

  • Запустите скрипт scala, используя имя файла scala.scala
  • Аргументы командной строки для сценария Scala доступны через массив Scala с именем args, который начинается с нуля.
  • // и /**/ используются для комментариев scala

5. Цикл с while; решить, если

  • block — код в фигурных скобках
  • 2 пробела рекомендуемый стиль отступа для Scala
  • логическое выражение для while и if должно быть заключено в круглые скобки.

6. Итерация с foreach и for

  • Scala позволяет вам программировать императивно — вы даете одну команду за раз, выполняете итерацию с помощью циклов и часто изменяете состояние, совместно используемое различными функциями.

args.foreach(arg => println(arg))

args.foreach((arg: String) =› println(arg))

args.foreach(println)

  • 2. это более явный способ передать аргумент с типом. 3. это самый лаконичный способ
  • Если функциональный литерал состоит из одного оператора, который принимает один аргумент, вам не нужно явно называть и указывать аргумент.

  • Синтаксис литерала функции представляет собой список именованных параметров в скобках, стрелку вправо, а затем тело функции.

Заключение

В этой главе рассматриваются некоторые базовые возможности Scala, с которых можно начать.

Следующий: