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
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