Содержание курса
1. Введение в Scala и настройка окружения
5 уроков
6
5
0м
0
Открытый
1.1
Что такое Scala: история, философия и экосистема
↗
2
2
-
0
Открытый
1.2
Первый проект: sbt и Scala CLI
↗
1
1
-
0
Открытый
1.3
REPL-сессия и варианты Hello World
↗
1
1
-
0
Открытый
1.4
Проверочный тест и практическое задание
↗
1
0
-
0
Открытый
1.5
Обзор экосистемы и дорожная карта курса
↗
1
1
-
0
2. Переменные, типы и выражения
5 уроков
4
3
0м
0
Открытый
2.1
Система типов Scala: от val до Nothing
↗
1
1
-
0
Открытый
2.2
Практика: типы, выражения и интерполяция
↗
1
1
-
0
Открытый
2.3
Иерархия типов и BigDecimal для денег
↗
1
1
-
0
Открытый
2.4
Проверочный тест и практическое задание
↗
1
0
-
0
Открытый
2.5
Углублённые темы: тонкости типов и best practices
↗
0
0
-
0
3. Управляющие конструкции
7 уроков
1
1
0м
0
Открытый
3.1
Теория: управляющие конструкции Scala 3
↗
1
1
-
0
Открытый
3.2
Код: for-comprehension и desugaring
↗
0
0
-
0
Открытый
3.3
Код: хвостовая рекурсия
↗
0
0
-
0
Открытый
3.4
Тест и задание: управляющие конструкции
↗
0
0
-
0
Открытый
3.5
Тест и задание: управляющие конструкции
↗
0
0
-
0
Открытый
3.6
Тест и задание: управляющие конструкции
↗
0
0
-
0
Открытый
3.7
Дополнительная практика и разбор задач
↗
0
0
-
0
4. Функции и методы
5 уроков
0
0
0м
0
Открытый
4.1
Теория: функции и методы Scala 3
↗
0
0
-
0
Открытый
4.2
Код: HOF, каррирование и дизайн API
↗
0
0
-
0
Открытый
4.3
Код: extension methods и PartialFunction
↗
0
0
-
0
Открытый
4.4
Тест и задание: функции и методы
↗
0
0
-
0
Открытый
4.5
Дополнительная практика: функции и методы
↗
0
0
-
0
5. Объектно-ориентированное программирование в Scala 3
4 урока
0
0
0м
0
Открытый
5.1
Теория ООП в Scala 3: классы, трейты, наследование
↗
0
0
-
0
Открытый
5.2
Практика: доменная модель e-commerce
↗
0
0
-
0
Открытый
5.3
Практика: трейты, mixins и система уведомлений
↗
0
0
-
0
Открытый
5.4
Тест и практическое задание по ООП
↗
0
0
-
0
6. Case-классы, enum и алгебраические типы данных
4 урока
1
0
0м
0
Открытый
6.1
Теория: case-классы, enum, ADT и opaque types
↗
1
0
-
0
Открытый
6.2
Практика: ADT, конечный автомат и event sourcing
↗
0
0
-
0
Открытый
6.3
Практика: opaque types и enum
↗
0
0
-
0
Открытый
6.4
Тест и практическое задание по ADT
↗
0
0
-
0
7. Pattern Matching в Scala 3
4 урока
1
1
0м
0
Открытый
7.1
Теория: Pattern Matching — полное руководство
↗
1
1
-
0
Открытый
7.2
Практика: кастомные экстракторы и сложный PM
↗
0
0
-
0
Открытый
7.3
Практика: PM по коллекциям + PartialFunction
↗
0
0
-
0
Открытый
7.4
Итоговый тест и практическое задание
↗
0
0
-
0
8. Коллекции Scala 3
4 урока
0
0
0м
0
Открытый
8.1
Теория: коллекции Scala — полное руководство
↗
0
0
-
0
Открытый
8.2
Практика: конвейер обработки данных
↗
0
0
-
0
Открытый
8.3
Практика: производительность, views и ленивость
↗
0
0
-
0
Открытый
8.4
Итоговый тест и практическое задание
↗
0
0
-
0
9. Обработка ошибок и эффектов
5 уроков
0
0
0м
0
Открытый
9.1
Теория обработки ошибок и эффектов в Scala 3
↗
0
0
-
0
Открытый
9.2
Практика: конвейер обработки ошибок
↗
0
0
-
0
Открытый
9.3
Практика: управление ресурсами и Error ADT
↗
0
0
-
0
Открытый
9.4
Итоговый тест и практическое задание
↗
0
0
-
0
Открытый
9.5
Дополнительные паттерны и лучшие практики
↗
0
0
-
0
10. Параметризация типов (Generics)
5 уроков
0
0
0м
0
Открытый
10.1
Теория параметризации типов в Scala 3
↗
0
0
-
0
Открытый
10.2
Практика: вариантность и библиотека контейнеров
↗
0
0
-
0
Открытый
10.3
Практика: Higher-Kinded Types и Type Lambdas
↗
0
0
-
0
Открытый
10.4
Итоговый тест и практическое задание
↗
0
0
-
0
Открытый
10.5
Продвинутые паттерны обобщённого программирования
↗
0
0
-
0
11. Модуль 11. Implicits и контекстные абстракции
6 уроков
0
0
0м
0
Открытый
11.1
Теория: Implicits — от Scala 2 к Scala 3
↗
0
0
-
0
Открытый
11.2
Код: Type class JsonEncoder с деривацией
↗
0
0
-
0
Открытый
11.3
Код: Context functions и Tagless Final
↗
0
0
-
0
Открытый
11.4
Тест: Implicits и контекстные абстракции
↗
0
0
-
0
Открытый
11.5
Тест: Продвинутые сценарии given/using
↗
0
0
-
0
Открытый
11.6
Тест: Деривация и Mirror
↗
0
0
-
0
12. Модуль 12. Система типов — продвинутый уровень
5 уроков
0
0
0м
0
Открытый
12.1
Теория: Продвинутая система типов Scala 3
↗
0
0
-
0
Открытый
12.2
Код: Match types и type-level programming
↗
0
0
-
0
Открытый
12.3
Код: Union/intersection types и structural types
↗
0
0
-
0
Открытый
12.4
Тест: Продвинутые типы Scala 3
↗
0
0
-
0
Открытый
12.5
Тест: Compiletime и метапрограммирование
↗
0
0
-
0
13. Монады, функторы и ФП-паттерны
6 уроков
1
0
0м
0
Открытый
13.1
Функторы, аппликативы и монады: теория и законы
↗
1
0
-
0
Открытый
13.2
Практика: реализация Functor и Monad с нуля
↗
0
0
-
0
Открытый
13.3
Практика: Cats Effect IO + Resource
↗
0
0
-
0
Открытый
13.4
Практика: композиция эффектов с EitherT
↗
0
0
-
0
Открытый
13.5
Квиз и практическое задание: монады и ФП-паттерны
↗
0
0
-
0
Открытый
13.6
Практическое задание: собственная монада и трансформер
↗
0
0
-
0
14. Конкурентность и параллелизм
5 уроков
0
0
0м
0
Открытый
14.1
Конкурентность и параллелизм в Scala и на JVM
↗
0
0
-
0
Открытый
14.2
Практика: паттерны композиции Future
↗
0
0
-
0
Открытый
14.3
Практика: конкурентное приложение на Cats Effect
↗
0
0
-
0
Открытый
14.4
Квиз и практическое задание: конкурентность
↗
0
0
-
0
Открытый
14.5
Практическое задание: конкурентный пайплайн обработки данных
↗
0
0
-
0
15. Стандартная библиотека и работа с данными
5 уроков
1
0
0м
0
Открытый
15.1
Экосистема ввода-вывода и работы с данными в Scala
↗
1
0
-
0
Открытый
15.2
Практика: JSON-обработка с Circe
↗
0
0
-
0
Открытый
15.3
Практика: HTTP-сервер с Tapir
↗
0
0
-
0
Открытый
15.4
Квиз и практическое задание: Стандартная библиотека
↗
0
0
-
0
Открытый
15.5
Углублённые темы и дополнительные ресурсы
↗
0
0
-
0
16. Тестирование
5 уроков
1
0
0м
0
Открытый
16.1
Философия и инструменты тестирования в Scala
↗
1
0
-
0
Открытый
16.2
Практика: ScalaTest и ScalaCheck property-based тесты
↗
0
0
-
0
Открытый
16.3
Практика: MUnit и Testcontainers интеграционные тесты
↗
0
0
-
0
Открытый
16.4
Квиз и практическое задание: Тестирование
↗
0
0
-
0
Открытый
16.5
Продвинутые практики тестирования
↗
0
0
-
0
17. Сборка, инструменты и экосистема Scala
5 уроков
0
0
0м
0
Открытый
17.1
Инструменты сборки, форматирование и экосистема
↗
0
0
-
0
Открытый
17.2
Практика: мульти-модульный sbt-проект
↗
0
0
-
0
Открытый
17.3
Практика: Scala CLI и GraalVM Native Image
↗
0
0
-
0
Открытый
17.4
Викторина: инструменты и экосистема Scala
↗
0
0
-
0
Открытый
17.5
Экзамен: сборка и инструменты
↗
0
0
-
0
18. Метапрограммирование в Scala 3
5 уроков
1
0
0м
0
Открытый
18.1
Метапрограммирование: inline, макросы, TASTy и Mirror
↗
0
0
-
0
Открытый
18.2
Практика: inline-методы и compile-time вычисления
↗
1
0
-
0
Открытый
18.3
Практика: макросы — автогенерация логирования и метрик
↗
0
0
-
0
Открытый
18.4
Викторина: метапрограммирование в Scala 3
↗
0
0
-
0
Открытый
18.5
Экзамен: метапрограммирование
↗
0
0
-
0
19. Scala.js и Scala Native
5 уроков
3
0
0м
0
Открытый
19.1
Кроссплатформенная Scala: Scala.js и Scala Native
↗
1
0
-
0
Открытый
19.2
Практика: Scala.js интерактивное веб-приложение
↗
1
0
-
0
Открытый
19.3
Практика: Scala Native CLI-утилита с C interop
↗
0
0
-
0
Открытый
19.4
Квиз и задание: Scala.js и Scala Native
↗
1
0
-
0
Открытый
19.5
Продвинутые паттерны кроссплатформенной разработки
↗
0
0
-
0
20. Production паттерны и архитектура
5 уроков
2
0
0м
0
Открытый
20.1
Production паттерны и архитектура Scala-приложений
↗
2
0
-
0
Открытый
20.2
Практика: Clean Architecture приложение с DI
↗
0
0
-
0
Открытый
20.3
Практика: Миграция Scala 2→3 и Docker-сборка
↗
0
0
-
0
Открытый
20.4
Квиз и задание: Production паттерны
↗
0
0
-
0
Открытый
20.5
Продвинутые production-паттерны и итоги курса
↗
0
0
-
0