Essential Effects
How to safely create, compose, and execute effectful Scala programs using the Typelevel Cats Effect library.
Overview
This course introduces Cats Effect as a tool for building resource-safe and concurrent applications.
Cats Effect is a library that makes it easy to write code that effectively uses multiple cores and doesn’t leak resources. This makes building complex applications, such as highly concurrent services, much more productive. This course aims to introduce the core concepts in Cats Effect, giving you the knowledge you need to go further with the library in your own applications. This course is not, however, a detailed dive into every aspect of Cats Effect. Our aim is to cover everything you need to know and set you up so you can rapidly learn additional details on your own if needed.
Pre-requisites
Attendees should be proficient in Scala fundamentals, such as those taught in our Essential Scala course.
Curriculum
- Understand the meaning and role of side-effects and effects.
- Understand how to encapsulate side-effects in a safer form.
- Use
parMapN
and other combinators to run effects in parallel. - Integrate callback-based code, like
scala.concurrent.Future
, into a safer, effect-based interface. - Fork independent work into concurrent tasks, then cancel or join them.
- Learn how to separate CPU-bound work from blocking, IO-bound work.
- Build and combine resource-leak-proof dependencies for applications.
- Learn how to test code that performs multiple effects like concurrency and I/O.
Delivery
The course runs over 1 day when delivered onsite. Online we recommend three sessions of 4 hours each.
Upcoming And Recent Public Courses
Essential Effects
Learn to build concurrent and resource-safe applications using Cats Effect.
Essential Effects
Learn to build concurrent and resource-safe applications using Cats Effect.
Essential Effects
Learn to build concurrent and resource-safe applications using Cats Effect.
Essential Effects
Learn to build concurrent and resource-safe applications using Cats Effect.
Essential Effects
Learn to build concurrent and resource-safe applications using Cats Effect.