Programming Reactive Systems (Coursera)

Programming Reactive Systems (Coursera)
Course Auditing
Categories
Effort
Certification
Languages
Misc

MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Programming Reactive Systems (Coursera)
Reactive programming is a set of techniques for implementing scalable, resilient and responsive systems. The basic building-block of such systems is event handlers. This course teaches how to implement reactive systems in Scala by using high-level abstractions based on event-handlers. You will learn how to: use, transform and sequence asynchronous computations using Future values; write concurrent systems based on Actors, using untyped Akka and Akka Typed; design systems resilient to failures; implement systems that can scale out according to a varying workload; transform and consume infinite and intermittent streams of data with Akka Stream; understand how back-pressure controls flows of data

MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

What You Will 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

- What you will learn from this course


Syllabus


WEEK 1

Introduction, Recap and Asynchronous Programming

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


WEEK 2

The Actor Model

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


WEEK 3

Handling Failure and State

This module further explores the Actor model by showing useful patterns used to create complex and resilient programs


WEEK 4

Distributed Computing

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


WEEK 5

Typed Actors

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


WEEK 6

Stream Processing

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


WEEK 7

Advanced Stream Processing

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



MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.