Tags
Language
Tags
June 2025
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 1 2 3 4 5
    Attention❗ To save your time, in order to download anything on this site, you must be registered 👉 HERE. If you do not have a registration yet, it is better to do it right away. ✌

    ( • )( • ) ( ͡⚆ ͜ʖ ͡⚆ ) (‿ˠ‿)
    SpicyMags.xyz

    Scala Applied, Part 3

    Posted By: ELK1nG
    Scala Applied, Part 3

    Scala Applied, Part 3
    Last updated 3/2023
    MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
    Language: English | Size: 2.24 GB | Duration: 5h 21m

    Part 3 of Scala Applied, covering Scala's core libraries

    What you'll learn

    Use case classes to get lots of free, best practice functionality

    Contruct pattern matches like a Scala pro

    Create and use PartialFunctions

    Create, and manipulate Futures to avoid blocking and write reactive code

    Obtain an in-depth grounding in the Scala collections and examine the enormous potential and power in the collections API

    Know which collections to use in different circumstances to get desired performance

    Use Option types instead of nulls to virtually eliminate NullPointerExceptions

    Harness Java libraries effectively and safely, and even improve them in Scala

    Know how to mix Java and Scala on a project, if you need to

    Build your project using sbt

    Write custom tasks and settings in sbt

    Requirements

    Students should follow and complete the Stairway to Scala Setup Instructions, available for free on Udemy, before starting this course

    Students should have completed parts 1 and 2 of Stairway to Scala Applied, or have equivalent skills to having completed those two parts before starting this course

    Students will need a laptop or desktop computer with sufficient performance and resources to compile and run the coding exercises

    Description

    Scala Applied, part 3 is the final part of this Scala programming language course. The course in its entirety is aimed at giving you a full, day-to-day working knowledge of Scala programming, including some of the most common core library APIs.This part starts with a final language feature for Scala (continuing from the other language features covered in parts 1 and 2). Pattern matching, partial functions and case classes are examined, how they can be used together, and how partial functions can help you avoid certain runtime errors by validating input to a function before you call it.Then we delve into the collections API in the core libraries (a very in-depth 2 module examination of the capabilities and performance tradeoffs of the various collection options), and finish up with a look at using Scala on Java projects, using Java libraries from Scala and how to harness build tools (particularly SBT) to build your project and even write custom settings and tasks. Following that we look at the Futures API in the core libraries.This course is also a good lead-in to the Stairway to Scala Advanced 3 part course which concentrates on in-depth language features, higher level functional abstractions, common patterns and idioms, type theory and other more advanced Scala concepts that will be particularly helpful for anyone writing their own libraries and APIs in Scala.

    Overview

    Section 1: Course Introduction and Exercises

    Lecture 1 Download the exercises for this course

    Lecture 2 Download Slides and Exercises

    Section 2: Module 12 - Pattern Matching

    Lecture 3 01 - Module 12 Introduction

    Lecture 4 02 - Agenda

    Lecture 5 03 - Simple Constant Patterns

    Lecture 6 04 - match is an expression

    Lecture 7 05 - Variable Loads

    Lecture 8 06 - Binding vs Loading

    Lecture 9 07 - Case Matters!

    Lecture 10 08 - Case Matters Continued!

    Lecture 11 09 - Guards

    Lecture 12 10 - The Wrong Way to Guard

    Lecture 13 11 - Matching Options

    Lecture 14 12 - Matching Tuples

    Lecture 15 13 - Matching Lists

    Lecture 16 14 - Other Collections

    Lecture 17 15 - Matching Try

    Lecture 18 16 - Case Classes 1

    Lecture 19 17 - Case Classes 2

    Lecture 20 18 - Case Classes 3

    Lecture 21 19 - Compound Pattern Matches

    Lecture 22 20 - Typed Pattern Matches

    Lecture 23 21 - Beware Type Erasure!

    Lecture 24 22 - val and Pattern Matching

    Lecture 25 23 - for and Pattern Matching

    Lecture 26 24 - Partial Functions and Pattern Matches

    Lecture 27 25 - Sealed Class Hierarchies

    Lecture 28 26 - Extractors and unapply

    Lecture 29 27 - Custom Extractors

    Lecture 30 28 - Custom Seq Extractors

    Lecture 31 29 - Module 12 Exercises

    Section 3: Module 13 - Lists

    Lecture 32 01 - Module 13 Introduction

    Lecture 33 02 - Agenda

    Lecture 34 03 - The Immutable Linked List

    Lecture 35 04 - List Properties

    Lecture 36 05 - Initializing Lists

    Lecture 37 06 - Converting to Lists

    Lecture 38 07 - List is Covariant

    Lecture 39 08 - Constant Time Operations

    Lecture 40 09 - Linear Time Operations

    Lecture 41 10 - Operations that Depend on Position

    Lecture 42 11 - Higher Order Functions

    Lecture 43 12 - Predicate Based Functions

    Lecture 44 13 - Folds

    Lecture 45 14 - Fold Alternatives

    Lecture 46 15 - Sorting

    Lecture 47 16 - Even More Functions

    Lecture 48 17 - And More

    Lecture 49 18 - Permutations and Combinations

    Lecture 50 19 - Indices, zip, unzip

    Lecture 51 20 - Module 13 Exercises

    Section 4: Module 14 - Collections

    Lecture 52 01 - Module 14 Introduction

    Lecture 53 02 - Agenda

    Lecture 54 03 - Other Collections

    Lecture 55 04 - Sequences Performance

    Lecture 56 05 - Sets and Maps Performance

    Lecture 57 06 - LinearSeq vs IndexedSeq

    Lecture 58 07 - mutable vs immutable

    Lecture 59 08 - Consistent API

    Lecture 60 09 - Easy Conversions

    Lecture 61 10 - Other Sequences

    Lecture 62 11 - The Mighty Vector

    Lecture 63 12 - Vector (continued)

    Lecture 64 13 - Immutable Sets

    Lecture 65 14 - Sorted and Mutable Sets

    Lecture 66 15 - Maps

    Lecture 67 16 - Sorted and Mutable Maps

    Lecture 68 17 - Key and Value Operations

    Lecture 69 18 - Immutable Implementations

    Lecture 70 19 - Mutable Implementations

    Lecture 71 20 - Iterators

    Lecture 72 21 - Views

    Lecture 73 22 - Streams

    Lecture 74 23 - Module 14 Exercises

    Section 5: Module 15 - Building Scala, SBT, Java Compatibility

    Lecture 75 01 - Module 15 Introduction

    Lecture 76 02 - Agenda

    Lecture 77 03 - Maven

    Lecture 78 04 - Gradle

    Lecture 79 05 - Other Options

    Lecture 80 06 - SBT

    Lecture 81 07 - Using SBT

    Lecture 82 08 - SBT Project Source Layout

    Lecture 83 09 - build.sbt

    Lecture 84 10 - Example build.sbt

    Lecture 85 11 - Example plugins.sbt

    Lecture 86 12 - Making a Custom Setting

    Lecture 87 13 - A Custom Task

    Lecture 88 14 - Multiple Project Support

    Lecture 89 15 - Mixing Scala and Java

    Lecture 90 16 - Scala/Java Compile Cycle

    Lecture 91 17 - Calling Java from Scala

    Lecture 92 18 - Scala 2.12 and Java 8

    Lecture 93 19 - Scala/Java Function Compatibility

    Lecture 94 20 - Handling Nulls

    Lecture 95 21 - Options to Nulls

    Lecture 96 22 - Java -> Scala Collections

    Lecture 97 23 - Boxed Types Trouble

    Lecture 98 24 - Scala Traits and Java Interfaces

    Lecture 99 25 - General Advice

    Lecture 100 26 - Module 15 Exercises

    Section 6: Module 16 - Futures

    Lecture 101 01 - Module 16 Introduction

    Lecture 102 02 - Agenda

    Lecture 103 03 - Futures

    Lecture 104 04 - Creating a Future

    Lecture 105 05 - Some Initial Rules

    Lecture 106 06 - Future States

    Lecture 107 07 - Composing Futures

    Lecture 108 08 - Futures with for

    Lecture 109 09 - Async Evaluation

    Lecture 110 10 - Forcing a Result

    Lecture 111 11 - Other Future Operations

    Lecture 112 12 - More Operations

    Lecture 113 13 - Recovering from Failures

    Lecture 114 14 - Dealing with Multiple Futures

    Lecture 115 15 - Other Future Sequence Operations

    Lecture 116 16 - Promises

    Lecture 117 17 - A Broken Promise

    Lecture 118 18 - Working with Java's Futures

    Lecture 119 19 - Future Patterns - Batching

    Lecture 120 20 - foldLeft and flatMap

    Lecture 121 21 - Future Patterns - Retrying

    Lecture 122 22 - Retrying (naive)

    Lecture 123 23 - Retrying (loop)

    Lecture 124 24 - Retrying with Back-off

    Lecture 125 25 - Retrying with Back-off 2

    Lecture 126 26 - Future Alternatives

    Anyone wanting to learn the Scala programming language,This is part 3 of a 3 part course, please check you have skills equivalent to parts 1 and 2 before taking this course,We do assume the student has some programming knowledge in a modern programming language other than Scala