## With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

No credit card required

## Video Description

In this Beginning Scala Programming training course, expert author Daniel Hinojosa will teach you everything you need to know about methods, classes, functions, and collections in Scala. This course is designed for the absolute beginner, meaning no previous experience with Scala is required.

You will start by learning how to create a script and application in Scala, then jump into learning the Scala basics. From there, Daniel will teach you about Scala methods, Scala classes, and objects. This video tutorial also covers the apply method and higher order functions. Finally, you will learn about collection basics and collections with functions.

Once you have completed this computer based training course, you will have learned everything you need to know to get started with Scala.

1. Introduction
1. What Is Scala? 00:00:56
2. What Are The Positives Of Scala? 00:01:10
3. What Are The Negatives Of Scala? 00:02:40
4. About The Author 00:00:49
5. How To Access Your Working Files 00:01:15
2. Setup
2. Installing Scala - Windows 00:05:26
3. Installing Scala - Mac 00:03:56
4. Installing Scala - Linux 00:04:32
5. Creating A Script In Scala 00:04:58
6. Creating An Application In Scala 00:06:42
3. Scala Basics
1. val And var 00:04:01
2. Lazy val 00:04:13
3. Bending Variables And Values To Your Will 00:04:17
4. byte, short, int, long, Floats, Booleans, And Doubles 00:07:38
5. if, else if, else 00:04:06
6. while, do while 00:05:18
7. For Loops 00:08:26
8. Strings 00:01:46
9. Smart Strings 00:07:19
10. String Formatting 00:12:12
11. String Interpolation 00:09:19
4. Scala Methods
1. Basic Methods 00:07:44
2. Any, AnyVal, AnyRef 00:08:48
3. Different Return Types 00:02:29
4. Unit And Unit Conventions 00:10:45
5. Recursion 00:05:20
6. Tail Optimized Recursion 00:06:52
7. Methods In Methods 00:02:09
8. Bending Method Names To Your Will 00:04:44
11. Named And Default Arguments 00:06:01
12. AsInstanceOf And IsInstanceOf 00:07:28
13. Parameterized Types On Methods 00:10:45
5. Scala Classes
1. Classes 00:10:01
2. Java Getters And Java Setters 00:05:02
3. Constructors 00:08:53
4. Constructor Named And Default Arguments 00:03:09
5. Methods In Classes 00:09:52
6. Preconditions, Exceptions, And Exception Handling 00:10:42
7. Subclassing 00:09:53
8. Overriding Methods 00:09:18
9. equals, hashCode, toString 00:12:24
10. Case Classes 00:08:22
11. Abstract Classes 00:05:15
12. Parameterized Types On Classes 00:08:29
13. Parameterized Methods In Classes 00:06:43
6. Scala Object
1. Singleton Objects 00:11:20
2. Companion Objects 00:12:48
7. Magical Methods
1. The Magic Apply Method 00:05:51
2. Infix Operators 00:05:09
3. Right-Associative Colons 00:04:07
8. Scala Option
1. Scala Option - Part 1 00:07:21
2. Scala Option - Part 2 00:05:53
9. Scala Tuples
1. Scala Tuples - Part 1 00:03:53
2. Scala Tuples - Part 2 00:02:58
10. Higher Order Functions
1. Creating A Function - Part 1 00:03:45
2. Creating A Function - Part 2 00:04:59
3. Creating A Function - Part 3 00:02:50
4. Is It A Method Or Is It A Function? 00:03:43
5. Converting A Method To A Function - Part 1 00:06:13
6. Converting A Method To A Function - Part 2 00:04:13
7. Closures 00:04:03
8. Functions With Functions 00:05:51
9. Currying 00:03:34
10. Curried Method Parameters 00:04:36
11. By-Name Parameters - Part 1 00:06:12
12. By-Name Parameters - Part 2 00:02:58
11. Collection Basics
1. The Importance Of A Language With A Clean API 00:02:57
2. Lists 00:09:11
3. Sets 00:08:41
4. Maps And Symbols 00:10:05
5. Arrays And Repeated Parameters 00:06:28
6. Ranges 00:05:39
12. Collections With Functions
1. map 00:12:30
2. filter, filterNot, And exists 00:06:40
3. forEach 00:03:45
4. flatMap 00:15:13
5. For Comprehensions 00:14:28
6. fold And reduce 00:07:00
7. zip 00:02:31
8. Finding Your Method In The API 00:06:35
9. Solving Functionally With Scala 00:05:41
13. Conclusion
1. Wrap Up 00:00:31