Scala Applied Part 1

Introduction to programming in the Scala language. Core syntax and concepts.
Scala Applied Part 1
File Size :
2.23 GB
Total length :
5h 43m

Category

Instructor

Dick Wall

Language

Last update

3/2023

Ratings

4.6/5

Scala Applied Part 1

What you’ll learn

Use the REPL (the Scala Interactive Shell) for experimentation and fun
Understand the basics of Scala syntax, including val, var, def, if, while, try, for and more
Create classes, objects and instances
Define and use function literals and higher order functions
Understand the basics of Scala’s type inference and how to use it
Write custom control structures to augment those built into the language
Start down the path of a more functional style of programming
Be ready for Part 2 of Stairway to Scala Applied, which will dig into some of the differences between Scala and other languages

Scala Applied Part 1

Requirements

Knowledge of at least one other programming language, along with the fundamentals of computer programming is assumed
Student should complete the free Stairway to Scala – Setup Instructions also available on Udemy to be ready to take this course.

Description

After taking Scala Applied part 1, you will be able to:Use the REPL (the Scala Interactive Shell) for experimentation and funUnderstand the basics of Scala syntax, including val, var, def, if, while, try, for and moreCreate classes, objects and instancesDefine and use function literals and higher order functionsUnderstand the basics of Scala’s type inference and how to use itWrite custom control structures to augment those built into the languageStart down the path of a more functional style of programmingBe ready for Part 2 of Stairway to Scala Applied, which will dig into some of the differences between Scala and other languagesThe course is half theory, half practice with hands on coding exercises built around test driven development examples. If you complete all three parts, with all the exercises, you will find that in addition to a strong grounding in the language theory, you will have the practical skills and comfort to code in Scala, as well as having the tools necessary to do so.Unlike many other courses that teach a specific aspect of the Scala language, for example reactive programming or functional concepts, Stairway to Scala Applied provides a balanced and thorough introduction to the whole language and its concepts, including libraries like Actors and Collections. It is intended to accelerate your Scala learning curve and make you able to use Scala productively by the end of the course.The course is taught by two highly experienced Scala developers who use Scala on a daily basis for real world commercial projects, and have done so for several years each.Most of the lectures are practical demonstrations accompanied by a slide. You can download the slide deck and follow along on your computer, but the lectures are also presented using Udemy mashups, so the slide and practical demo can be switched between at will. If you hear typing, it’s best to bring up the practical demo screencast instead of the slide in order to follow along.

Overview

Section 1: Course Introduction and Exercises

Lecture 1 Course Introduction and Content

Lecture 2 Download Slides and Exercises

Section 2: Module 1 – Starting Scala

Lecture 3 01 – Introduction

Lecture 4 02 – Module Agenda

Lecture 5 03 – The Scala REPL

Lecture 6 04 – Using SBT

Lecture 7 05 – First time in the REPL

Lecture 8 06 – Vals and Vars

Lecture 9 07 – Hiding a val with another val

Lecture 10 08 – Scala and Types

Lecture 11 09 – Defining a Method

Lecture 12 10 – If Expressions

Lecture 13 11 – If Expressions continued

Lecture 14 12 – Functional Style and try…catch…finally

Lecture 15 13 – Simple Loops

Lecture 16 14 – Do…While

Lecture 17 15 – Scala Scripts

Lecture 18 16 – Module 1 exercises

Section 3: Module 2 – Scala 101 and Worksheets

Lecture 19 01 – Introduction

Lecture 20 02 – Module Agenda

Lecture 21 03 – Scala projects in IntelliJ

Lecture 22 04 – IntelliJ Worksheets

Lecture 23 05 – Method Parameters and Return Types

Lecture 24 06 – Methods with no return types

Lecture 25 07 – Expressions and Statements

Lecture 26 08 – Assignments and Unit

Lecture 27 09 – Tuples

Lecture 28 10 – Tuples continued

Lecture 29 11 – Re-writing Rules: Infix

Lecture 30 12 – Re-writing Rules: Apply

Lecture 31 13 – Re-writing Rules: Update

Lecture 32 14 – General Notes on Re-writing

Lecture 33 15 – Collections Intro

Lecture 34 16 – List Initialization and Cons

Lecture 35 17 – Sequences

Lecture 36 18 – Sets

Lecture 37 19 – Mutable vs Immutable

Lecture 38 20 – Maps

Lecture 39 21 – The -> Extension Method

Lecture 40 22 – Simple Map Iteration

Lecture 41 23 – More Functional Style

Lecture 42 24 – Opening and Reading a File

Lecture 43 25 – Module 2 Exercises (and how to run them in IntelliJ)

Section 4: Module 3 – Classes, Objects, Apps and more

Lecture 44 01 – Introduction

Lecture 45 02 – Module Agenda

Lecture 46 03 – Define a Scala Class

Lecture 47 04 – Constructors and Parameters

Lecture 48 05 – Parameters, Fields and Parametric Fields

Lecture 49 06 – A Rational Class

Lecture 50 07 – Checking Preconditions

Lecture 51 08 – Referencing Self

Lecture 52 09 – Infix Style and Symbolic Methods

Lecture 53 10 – Symbolic Methods continued

Lecture 54 11 – Auxiliary Constructors

Lecture 55 12 – Companion Objects

Lecture 56 13 – Companions and private

Lecture 57 14 – Method Overloading

Lecture 58 15 – Implicit Conversion

Lecture 59 16 – Implicit Rules

Lecture 60 17 – Module 3 exercises

Section 5: Module 4 – Control Structures in Scala

Lecture 61 01 – Introduction

Lecture 62 02 – Module Agenda

Lecture 63 03 – Expressions and Statements Recap

Lecture 64 04 – Unit and Side Effects

Lecture 65 05 – Alternatives to Returning Unit

Lecture 66 06 – Return this instead of Unit

Lecture 67 07 – If, ternary and types

Lecture 68 08 – val and var, IDE tricks

Lecture 69 09 – Try…catch…finally and type inference

Lecture 70 10 – While loop statement, and @tailrec

Lecture 71 11 – For Statements and Expressions

Lecture 72 12 – For…Yield

Lecture 73 13 – The Four Gs of For

Lecture 74 14 – For – more than just loops

Lecture 75 15 – Match expressions

Lecture 76 16 – Match Guards

Lecture 77 17 – More Matching

Lecture 78 18 – String Interpolation

Lecture 79 19 – Module 4 Exercises

Section 6: Module 5 – Functions and Closures

Lecture 80 01 – Introduction

Lecture 81 02 – Module Agenda

Lecture 82 03 – Private Methods

Lecture 83 04 – Nested Methods

Lecture 84 05 – Scoping of Nested Methods

Lecture 85 06 – Function Literals

Lecture 86 07 – Passing Function Literals

Lecture 87 08 – How Functions Work

Lecture 88 09 – Other Methods on Function

Lecture 89 10 – Higher Order Functions

Lecture 90 11 – Writing a Higher Order Function

Lecture 91 12 – Placeholder Syntax

Lecture 92 13 – Placeholders with Types

Lecture 93 14 – Partial Application

Lecture 94 15 – Partial Application continued

Lecture 95 16 – Closures

Lecture 96 17 – Partial Functions

Lecture 97 18 – Partial Functions continued

Lecture 98 19 – Partial Functions, map vs collect

Lecture 99 20 – Var Args

Lecture 100 21 – Using Var Args

Lecture 101 22 – Var Args, Expansion

Lecture 102 23 – Default and Named Parameters

Section 7: Module 6 – Custom Control Structures

Lecture 103 01 – Introduction

Lecture 104 02 – Module Agenda

Lecture 105 03 – Using the Contents of a File

Lecture 106 04 – Using Generics and Higher Order Functions

Lecture 107 05 – Calling the Generic Method

Lecture 108 06 – Currying Method Parameters

Lecture 109 07 – Curly Braces and Parens

Lecture 110 08 – Curried Generic Loan

Lecture 111 09 – Function Arity

Lecture 112 10 – Writing Our Own While Loop

Lecture 113 11 – By-name Functions

Section 8: End of Scala Applied, Part 1

Lecture 114 Thanks for taking the course

Anyone interested in programming using the Scala programming language,Students should have some programming experience in another language, but no prior Scala language knowledge is assumed.,Developers wanting to get to a good working knowledge of Scala as quickly as possible

Course Information:

Udemy | English | 5h 43m | 2.23 GB
Created by: Dick Wall

You Can See More Courses in the Developer >> Greetings from CourseDown.com

New Courses

Scroll to Top