Продолжительность
9 ч 16 мин 1 сек
Количество уроков
12 Видео
Дата добавления
03.12.2019
Дата обновления
31.05.2020
Комбинируя в себе возможности объектно-ориентированной и функциональной парадигм программирования, Scala предоставляет множество возможностей для разработчика. Функциональный подход позволяет писать код с высоким уровнем абстракции.
Более лаконичный и читаемый в записи код, а также в ряде случаев более быстрое его выполнение, позволяют существенно разнообразить инструментарий разработчика.
Курс Scala Advanced позволит вам глубже погрузиться в функциональную часть языка Scala. При прохождении курса вы познакомитесь с практическими аспектами применения каррирования, частично определённых функций, параметризированных и дополнительных типов, экстракторов и других особенностей языка. Главное – вы научитесь вести разработку в функциональном стиле, совмещая возможности ООП и функционального подхода.
По прохождению курса вы научитесь:
- Применять в разработке специализированные типы языка Scala - типы-одиночки, проекции типов, цепочки, составные, инфиксные, экзистенциальные, абстрактные типы и типы высшего порядка.
- Использовать неявные преобразования для расширения возможностей существующих классов.
- Использовать механизмы сопоставления с образцом языка Scala в отношении различных типов.
- Понимать работу с абстрактными элементами. Использовать на практике ленивые val-переменные, абстрактные типы, Path-dependent типы, уточняющие типы.
- Применять с Scala Future такие методы, как: преобразование, создание, фильтрация, обработка исключительных ситуаций и другие.
- Применять в разработке такие функциональные приёмы, как: обработка ошибок без использования Exception, использование чисто функционального состояния и чисто функционального параллелизма.
- Применять моноиды, их композицию, комбинаторы и правила монад.
- Понимать и применять функторы и понимать разницу между монадой и аппликативным функтором.
- Тестировать написанные вами программы с помощью юнит-тестов и фреймворка ScalaTest.