Scala & Functional Programming for Beginners | Rock the JVM
4.6 (4,847 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
19,962 students enrolled

Scala & Functional Programming for Beginners | Rock the JVM

Become a Scala programmer and get the skills you need to work with Spark, Akka, and any Scala framework!
Bestseller
4.6 (4,847 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
19,962 students enrolled
Created by Daniel Ciocîrlan
Last updated 5/2020
English
English [Auto-generated], French [Auto-generated], 5 more
  • German [Auto-generated]
  • Indonesian [Auto-generated]
  • Italian [Auto-generated]
  • Portuguese [Auto-generated]
  • Spanish [Auto-generated]
Current price: $20.99 Original price: $29.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 15.5 hours on-demand video
  • 3 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • understand Scala code in production environments or open-source projects
  • think code differently with functional programming
  • write applications in Scala from scratch
  • contribute to products and open-source projects written in Scala
  • skills to start developing with powerful tools on top of Scala: Spark, Akka, Play
Course content
Expand all 50 lectures 15:16:06
+ The Absolute Scala Basics
8 lectures 01:55:36
Expressions
19:34
Functions
21:52
Type Inference
04:21
Recursion
25:13
Call-by-Name and Call-by-Value
08:49
Default and Named Arguments
08:53
Smart Operations on Strings
15:08
+ Object-Oriented Programming in Scala
14 lectures 03:50:20
Object-Oriented Basics
14:40
Object-Oriented Basics (exercises)
17:08
Syntactic Sugar: Method Notations
16:33
Method Notations (Exercises)
12:09
Scala Objects
15:37
Inheritance
16:40
Inheritance Exercises: Implementing Our Own Collection
15:48
Generics
26:02
Anonymous Classes
06:25
Object-Oriented Exercises: Expanding Our Collection
26:06
Case Classes
11:40
Exceptions
27:05
Packaging and Imports
12:41
+ Functional Programming in Scala
11 lectures 03:56:29
Anonymous Functions
13:14
Higher-Order-Functions and Curries
19:38
HOFs and Curries (Exercises)
32:08
map, flatMap, filter and for-comprehensions
25:51
A Collections Overview
03:39
Sequences: List, Array, Vector
23:44
Tuples and Maps
15:32
Tuples and Maps (Exercises)
30:51
Options
26:19
Handling Failure
22:33
+ Pattern Matching
3 lectures 51:45
Pattern Matching
22:04
ALL the Patterns!
19:57
Patterns Everywhere
09:44
+ Coding practice: A Small File System
12 lectures 04:30:08
Introduction
15:15
Basic Code Scaffolding
28:26
Mkdir & Creating Immutable Structures, Part 1
19:45
Mkdir & Creating Immutable Structures, Part 2
30:55
Finalizing Mkdir and Testing with LS
19:07
PWD and Creating Files (Touch)
23:17
Changing Directories (CD) and Traversing Immutable Structures, Part 1
27:56
CD and Traversing Immutable Structures, Part 2 - Relative Paths
20:28
Removing "Files" and "Directories" (RM)
27:52
Echo!
15:36
Echo, Enhanced
21:52
Viewing "File" Contents (Cat) and Wrap-Up
19:39
Requirements
  • some experience with some other programming language - you've built something useful that works
  • computer science fundamentals: memory, running time, how programs compile and run
  • some Java knowledge is a plus, but not required
Description

In this course, we will learn the basics of Scala and functional programming, two highly in-demand topics in software industry today. Write 3000+ lines of Scala code yourself, with guidance, through 100+ examples and exercises.

Why Scala:

  • it's currently the hottest language based on the Java Virtual Machine - the number of Scala jobs has exploded, but demand is even higher
  • it offers significantly higher pay (> 20%) than same-level Java positions
  • it's incredibly fun - if you learn Scala, you'll hardly want to get back
  • it unlocks the doors to some of the latest technologies - Spark, Akka and more

I like to get to the point and get things done. This course 

  1. deconstructs Scala - which is otherwise hard to learn - into the critical pieces you need
  2. selects the most important concepts and separates them into what's simple but critical and what's powerful
  3. sequences ideas in a way that "clicks" and makes sense throughout the process of learning
  4. applies everything in live code

The end benefits are still much greater:

  • significant bump in salary when you switch to Scala - return on investment for this course >100x in the first year alone!
  • more enjoyable work - Scala is fun!
  • future-proof skills - you'll be able to work with some of the cutting edge technologies (Spark, Akka etc)

This course is for established programmers with otherwise no experience with Scala language or little to no experience with functional programming. I already assume a solid understanding of general programming fundamentals. If you've never coded before, this course is likely not for you.

The course is comprehensive, but you'll always see me get straight to the point. So make sure you have a good level of focus and commitment to become a badass programmer.

I believe both theory and practice are important. That's why you'll get lectures with code examples, real life Scala code demos and assignments, plus additional resources, instructions, exercises and solutions.

I've seen that my students are most successful - and my best students work at Google-class companies - when they're guided, but not being told what to do. I have assignments waiting for you, where I offer my (opinionated) guidance but otherwise freedom to experiment and improve upon your Scala code.

Definitely not least, my students are most successful when they have fun along the way!

So join me in this course and let's rock the JVM!

Who this course is for:
  • programmers with little or no experience with Scala or functional programming