Ho Lee Fuk

Сенсей
🛡 МОДЕРАТОР 🛡
Регистрация
22 Февраль 2018
Сообщения
11.997
Автор: udemy

Название: Функциональное Программирование с Scala Cats (2022)

1652027441046-png.96639


Описание:

Functional Programming with Scala Cats

udemy

Когда мы начинаем свой путь в качестве разработчика Scala, нашим первым впечатлением от языка может быть впечатление «улучшенной Java». Мы узнаем о классах, трейтах, сопоставлении с образцом и некоторых других конструкциях, которые облегчают нашу жизнь. В какой-то момент мы сталкиваемся с удивительными методами более высокого порядка, такими как map, filter и fold . Они служат отличным первым знакомством с функциональным программированием.

Но что, если я скажу вам, что есть гораздо больше, чем это? В этом курсе я покажу вам, как стандартные методы функционального программирования могут помочь вам написать более общий, надежный и тестируемый код.

Этот курс разделен на 3 основных раздела.

В первом разделе мы узнаем о классах типов. Мы будем использовать в качестве движущего примера проблему кодирования и декодирования объектов в байты и из байтов. К концу этого раздела вы сможете создавать свои собственные классы типов и использовать их шаблон для написания полиморфного кода.

Во втором разделе мы рассмотрим некоторые из наиболее распространенных классов типов в функциональном программировании, включая монады, аппликативы, функторы и многие другие. Мы будем использовать известную библиотеку Cats, чтобы предоставить нам их реализации, и мы будем использовать Discipline вместе со ScalaCheck и ScalaTest для проверки их законов. К концу этого раздела вы сможете писать допустимые экземпляры этих классов типов для любого из ваших типов и автоматически проверять их достоверность.

В третьем и последнем разделе мы научимся выполнять многие распространенные задачи программирования с функциональными структурами.

Эти задачи включают в себя:

- Валидации через тип данных Validated
- Внедрение зависимостей с монадой Reader
- Отслеживание данных в наших вычислениях с монадой Writer
- Управление состоянием с помощью монады State
- Написание безопасных для стека вычислений с помощью Trampolines
- Сделать вычисления ленивыми с помощью монады Eval
- Составление стеков монад с помощью преобразователей монад, таких как ReaderT и OptionT.
- Приостановка эффектов с помощью простой, но полезной реализации монады IO

Я большой сторонник обучения на практике, поэтому я включил множество видео-упражнений, а также викторины и задания в конце каждого раздела. Надеюсь, вам понравится делать их так же, как мне понравилось их собирать!

Без лишних слов, я хочу поприветствовать вас на курсе и в захватывающем мире функционального программирования!

Материал на английском языке

Подробнее:
Для просмотра содержимого вам необходимо авторизоваться.

Скачать:
Скрытое содержимое могут видеть только члены группы Премиум.


Скрытый контент для пользователей All-dar.
 

Создайте учетную запись или войдите, чтобы комментировать или скачивать материалы!

У вас должна быть учетная запись, чтобы оставлять комментарии

Зарегистрироваться

Создайте учетную запись. Это просто!

Авторизоваться

У вас уже есть аккаунт? Войдите здесь.

Сверху