Effective Programming in Scala
About this Course
Scala is an expressive, versatile, and safe programming language. In this course, you will learn how to get the most out of Scala to solve common programming tasks such as modeling business domains, breaking down complex problems into simpler problems, manipulating data, or running parallel tasks. Along the journey, you will also learn the best practices for writing high-quality code that scales to large applications, how to handle errors, how to write tests, and how to leverage a productive development environment. This comprehensive, hands-on, course aims at leveling up your programming skills by embracing both functional programming and object-oriented programming. You will become familiar with the standard library and the common patterns of code used in the real world. Each week contains about 1h30 of video lectures. Each lecture is a ~10 min video focused on a specific skill or concept. We always start by looking at concrete problems, and then explain how language features or libraries make you more productive to solve these problems in general. Lectures are generally followed by a quiz to assess your progress. At the end of each week, a graded assignment inspired by real-world applications will give you an opportunity to put things in practice. The course covers Scala 3, and it mentions the differences with Scala 2.Created by: École Polytechnique Fédérale de Lausanne

Related Online Courses
This is a self-paced lab that takes place in the Google Cloud console. Cloud SQL for PostgreSQL Database Observability and TuningCreated by: Google Cloud more
In this course, you will learn the Grammar of Graphics, a system for describing and building graphs, and how the ggplot2 data visualization package for R applies this concept to basic bar charts,... more
Azure provides a variety of ways to store data: unstructured, archival, relational, and more. In this course, you will learn the basics of storage management in Azure, how to create a Storage... more
This K8s certification specialization is intended for individuals seeking to develop proficiency in the architecture of Kubernetes and container orchestration techniques. The course is aligned with... more
This course is the third course in a series that aims to prepare you for a role working as a programmer. In this course, you will be introduced to the three main concepts in programming: Files,... more