Блог
Scala
Функ. программирование
Классы типов
Алгоритмы
Библиотеки
Упражнения
Ресурсы
Блог
Scala
Функ. программирование
Классы типов
Алгоритмы
Библиотеки
Упражнения
Ресурсы
Обзор Scala
С чего начать?
Hello, world!
REPL
Типы данных
Структуры управления
Структуры управления
if/else
for
match expressions
while and try
Моделирование данных
Моделирование данных
Классы
Объекты
Сопутствующие объекты
Трейты
Абстрактные классы
Перечисления
Кейс классы и объекты
Моделирование ООП
Моделирование ФП
Методы
Методы
Определение методов
Параметры по умолчанию
Именованные параметры
Параметры по имени
Каррирование
Методы с неопределенным количеством параметров
Generic параметры
Методы расширения
main методы
Функции
Функции
Анонимные функции
Параметры функции
Eta расширение
Функции высшего порядка
Написание своего собственного метода map
Возврат функции в методе
Пакеты и импорт
Верхнеуровневые определения
Коллекции
Коллекции
Типы коллекций
List
LazyList
ArraySeq
Vector
ArrayBuffer
Maps
Работа с множествами
Диапазон (Range)
Tuple (кортежи)
Queue
Методы в коллекциях
Функциональное программирование
ФП
Что такое функциональное программирование?
Неизменяемые значения
Чистые функции
Функции - это значения
Функциональная обработка ошибок
Система типов
Система типов
Определение типов
Generics типы
Верхнее ограничение типа
Нижнее ограничение типа
Пересечение типов
Объединение типов
Алгебраические типы данных (ADT)
Ковариантность типов
Непрозрачные типы
Структурные типы
Зависимые типы функций
Лямбда-типы
Типы match
Полиморфные типы функций
Другие типы
Контекстуальные абстракции
Абстракции
Экземпляры given
Предложения using
Класс типов
Контекстные границы
Given imports
Методы расширения - детали
Имплементация type классов
Type Class Derivation
Многостороннее равенство
Контекстные функции
Неявные преобразования типов
Контекстные параметры по имени
Детали
Детали
Предложения export
Распаковка параметров
Проверка типа
Сопоставление с образцом
Параллелизм
Утилиты
Утилиты
Сборка и тестирование проектов Scala с помощью Sbt
Worksheet
Взаимодействие с Java
Метапрограммирование
Metaprogramming
Inline
Операции во время компиляции
Макросы
Quoted Code
Runtime Staging
Reflection
TASTy Inspection
Soft Keywords
Scaladoc
Scaladoc
Документы
Связующая документация
Статическая документация
Встроенный блог
Версионность сайта
Поиск по типу
Проверка фрагмента
Настройки
Scala Best Practices
Scala Best Practices
Scala Best Practices от Alexandru Nedelcu
Scala Best Practices
Редактировать страницу
Scala Best Practices
Сборник Лучших практик в Scala.