Course

Functional Programming in Scala

École Polytechnique Fédérale de Lausanne

Discover the principles of functional programming and learn to write elegant, purely functional code that works the first time it is run. This Specialization provides a hands-on introduction to functional programming using Scala, covering everything from basic building blocks to architecting larger functional programs. With a focus on parallel and distributed programming, you'll learn to analyze data sets small to large, from parallel programming on multicore architectures to distributed programming on a cluster using Apache Spark.

  • Write purely functional programs using recursion, pattern matching, and higher-order functions
  • Design immutable data structures
  • Effectively use parallel collections to achieve performance
  • Manipulate data with Spark and Scala

Certificate Available ✔

Get Started / More Info
Functional Programming in Scala
Course Modules

Functional Programming in Scala covers principles of functional programming, functional design in Scala, parallel programming, big data analysis with Scala and Spark, and a capstone project applying learned skills.

Functional Programming Principles in Scala

Understand the principles of functional programming and learn to write purely functional programs using recursion, pattern matching, and higher-order functions. Design immutable data structures and learn to combine functional programming with objects and classes.

Functional Program Design in Scala

Recognize and apply design principles of functional programs, including designing functional libraries and APIs. Learn to write simple functional reactive applications and understand reasoning techniques for programs that combine functions and state.

Parallel programming

Learn the fundamentals of parallel programming, from task parallelism to data parallelism. Apply familiar ideas from functional programming to the data parallel paradigm and effectively parallelize familiar collections operations.

Big Data Analysis with Scala and Spark

Manipulate big data distributed over a cluster using functional concepts, with a focus on Spark's programming model. Express algorithms for data analysis in a functional style, and recognize how to avoid shuffles and recomputation in Spark.

Functional Programming in Scala Capstone

In the final capstone project, apply the skills learned by building a large data-intensive application using real-world data. Implement a complete application processing several gigabytes of data, involving data transformation, interpolation techniques, and interactive visualizations.

More Software Development Courses

Best Practices for Mobile Development With Java

Coursera Project Network

Best Practices for Mobile Development With Java provides essential skills to implement validation techniques in Java for mobile app development.

Fundamentals of Software Architecture for Big Data

University of Colorado Boulder

Fundamentals of Software Architecture for Big Data is a comprehensive course introducing the basics of software engineering for building and scaling large, data-intensive,...

Meta Spark Creator AR Certification

Meta

Prepare for the Meta Certified Meta Spark Creator exam with this comprehensive course. Access study materials and resources to help you succeed in the exam.

تعليم مبادئ ال SQL Syntax

Coursera Project Network

تعلم مبادئ ال SQL Syntax