Scala - это язык программирования общего назначения, в основном предназначенный для виртуальной машины Java. Разработанный для краткого, элегантного и безопасного для типов представления общих шаблонов программирования, он сочетает в себе как императивный, так и функциональный стили программирования. Его ключевые особенности: продвинутая система статического типа с выводом типа; типы функций; сопоставления с образцом ; неявные параметры и преобразования; перегрузка оператора; полная совместимость с Java; совпадение

Scala- это язык программирования общего назначения, в основном предназначенный для виртуальной машины Java. Разработанный для выражения общих шаблонов программирования в сжатой, элегантной и безопасной для типов форме, он сочетает в себе imperative-programmingи функционально-программированиестилей . Его ключевые особенности:

  • Статическая печать
  • Продвинутая система типов с выводом типа и декларацией на сайте
  • Типы функций (включая анонимные), которые поддерживают лексические замыкания
  • Шаблон сопоставления
  • Неявные параметры и преобразования, которые поддерживают шаблоны типов и enrich-my-library
  • Смешанная композиция
  • Полная совместимость с Java
  • Мощные конструкции параллелизма
  • Расширенные языковые конструкции, такие как продолжения с разделителями и экспериментальная система макросов

Для получения дополнительной информации см. Официальные Введение в Scalaи Документация Scala.

Для поиска символов Scala, таких как => в переполнении стека, вы можете воспользоваться поиском символа.

Для поиска документации по Scala вы можете использоватьscalex.

Список доступных библиотек сообщества доступен по адресу Awesome Scala.

Существует индекс библиотеки Scala от Центра Scala: Scaladex.

Бесплатные книги и руководства по программированию Scala

Учебник Scala по переполнению стека

  1. Введение в Scala
  1. Переменные / значения
  1. Методы
  1. Литералы, операторы и блоки
  1. Loops / рекурсии
  1. Структуры данных / Коллекции
  1. Для понимания ,
  1. Перечисление
  1. Сопоставление с образцом
  1. Классы, объекты и типы
  1. Пакеты, импорт и идентификаторы видимости
  1. Наследование
  1. Экстракторы
  1. Тематические классы
  1. Параметризованные типы
  1. Черты
  1. Самостоятельные ссылки
  1. Обработка ошибок
  1. Обработка типов
  • Преимущества системы типов Scala
    1. Аннотации
    1. Функции / Функциональные литералы
    1. Тип безопасности
    1. Implicits
    1. Отражение
    1. Шаблон Enrich-my-library (ранее известный как pimp-my-library)
    1. Обзор параллелизма
    2. Актеры
    1. Используйте Java из Scala и наоборот
    1. XML-литералы
    • Объяснение
    1. Скала Свинг
    1. Программирование типов
    1. Функциональная Скала

    Дальнейшее обучение

    1. Образовательные ресурсы
    1. REPL
    1. Работа с scalac и scala
    1. Приоритет оператора
    1. Скала стиль
    1. Принципы функционального программирования в Scala, курс по функциональному программированию на Coursera, который ведет Мартин Одерский, создатель Scala.
    2. Принципы реактивного программирования, курс по реактивному функциональному программированию на Coursera, который преподают Мартин Одерский, Эрик Мейер, Роланд Кун.
    3. Параллельное программирование, курс параллельного программирования на Coursera, читаемый Виктором Кунчаком и Александаром Прокопеком.