Это ключевые моменты из книги 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, с которых можно начать.