Scala: The Big Picture

Scala: The Big Picture

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 2h 16m | 222 MB

Scala is one of the most popular functional programming languages that run on the JVM. This course covers the fundamentals of functional programming using Scala, reading and writing Scala code, error handling, classes, and concurrency.

Functional programming requires learning new programming paradigms, and Scala is an excellent language with which to do so. In this course, Scala: The Big Picture, you will learn the Scala language from scratch as a first step in your journey to master the language. First, you will learn the basics of functional programming which you’ll apply throughout the rest of the course. Next, you will explore the Scala language, from the basic syntax to functions, classes, collections, and pattern matching. Finally, you will discover how to do concurrent programming the right way using Scala. When you’re finished with this course, you will have the foundational knowledge needed to solve problems using Scala, and will know how to get help when needed.

Table of Contents

Course Overview
1 Course Overview

Concurrency
2 Overview
3 Concurrency and Parallelism
4 Future and ExecutionContext
5 Futures Transformation
6 Filtering and Collecting Futures
7 Other Ways to Model Asynchronous Operation
8 Dealing with Future Failures
9 Summary

What s Next
10 Overview
11 Start Experimentation Using the REPL
12 Explore the API
13 Solve Programming Problems
14 Where to Ask for Help
15 Summary

Introduction
16 Overview
17 Why Learn Scala
18 What You Will Learn
19 Installation
20 Scala REPL
21 Scala IntelliJ IDEA
22 Summary

Functional Programming Concepts
23 Overview
24 Immutability
25 Expressions vs. Statements
26 Functions
27 Pure and Impure Functions
28 Referential Transparency
29 Higher Order Functions
30 Summary

First Interaction with Scala
31 Overview
32 REPL
33 Variables and Values
34 Conditionals
35 Loops
36 Summary

Functions
37 Overview
38 Structure of a Function
39 Anonymous Functions
40 Higher Order Functions
41 Summary

Classes
42 Overview
43 Structure of Classes
44 Companion Objects
45 Creating Objects Using Apply
46 Case Classes
47 Launching Standalone Programs Extending App
48 Summary

Null Checks and Error Handling
49 Overview
50 Why Null Checks Are Bad
51 Option as a Better Alternative
52 Error Handling in Imperative Languages
53 Error Handling with Try
54 Error Handling with Either
55 Summary

Pattern Matching
56 Overview
57 What Is It
58 Match on Constants
59 Match on Case Classes
60 Match on Sequences
61 Match on Type Only
62 Guarding Your Match
63 Summary

Collections
64 Overview
65 Benefits of Scala Collections Library
66 Mutable and Immutable
67 Class Hierarchy Diagram
68 List with Examples
69 Set with Examples
70 Map with Examples
71 Methods on Numeric Collections
72 Filtering Size and Conversion Operations on Collections
73 Transforming a Collection Using Map
74 Transforming a Collection Using FlatMap
75 Working with Option and FlatMap
76 Summary