Reactive programming is a set of techniques for implementing scalable, resilient and responsive systems as per the Reactive Manifesto. Such systems are based on asynchronous message-passing, and their basic building-blocks are event handlers. This course teaches how to implement reactive systems in Scala and Akka by using high-level abstractions, such as actors, asynchronous computations, and reactive streams.
Programming Reactive Systems (Scala 2 version)
Instructors: Julien Richard-Foy
Sponsored by ITC-Infotech
Recommended experience
What you'll learn
Understand how back-pressure controls flows of data
Transform and consume infinite and intermittent streams of data with Akka Stream
implement systems that can scale out according to a varying workload
Design systems resilient to failures
Details to know
Add to your LinkedIn profile
See how employees at top companies are mastering in-demand skills
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV
Share it on social media and in your performance review
There are 7 modules in this course
This module shows you how to get started with the course. After setting up your machine to work on and to submit assignments, it will provide you with a recap of the basics of the Scala language. Finally, you will encounter the first topic of the course, asynchronous programming with Futures.
What's included
8 videos9 readings3 programming assignments
This module presents the Actor model: after analyzing its advantages and strengths, you will learn the semantics and design principles of actor systems before learn how to concretely test actor-based programs
What's included
5 videos2 programming assignments
This module further explores the Actor model by showing useful patterns used to create complex and resilient programs
What's included
3 videos2 programming assignments
Actors allow you to decouple a program in units that can be distributed on a single or on multiple machines. This module elaborates on the power and the consequences of distributed computation
What's included
6 videos
Now that you are familiar with the Actor model, this module shows how to leverage Scala's powerful type system to write programs with more confidence by using typed actor descriptions
What's included
6 videos2 programming assignments
This module introduces the concept of data streams and the basic semantics of stream processing before showing how the Akka framework can be used to tackle common challenges in this domain
What's included
4 videos2 programming assignments
This final module elaborates on more complex and powerful patterns in stream processing as well as how to the integrate the actor model to create custom nodes of data processing
What's included
4 videos2 programming assignments
Instructors
Offered by
Why people choose Coursera for their career
Recommended if you're interested in Computer Science
LearnKartS
Duke University
University of Illinois Urbana-Champaign
Open new doors with Coursera Plus
Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription
Advance your career with an online degree
Earn a degree from world-class universities - 100% online
Join over 3,400 global companies that choose Coursera for Business
Upskill your employees to excel in the digital economy