Scala is an acronym for “Scalable Language”. It is a general-purpose programming language designed for the programmers who want to write programs in a concise, elegant, and type-safe way. Scala enables programmers to be more productive. Scala is developed as an object-oriented and functional programming language.

If you write a code in Scala, you will see that the style is similar to a scripting language. Even though Scala is a new language, it has gained enough users and has a wide community support. It is one of the most user-friendly languages.

Module 1

Introduction to Scala

Learning Objectives – In this module, you will understand basic concepts of Scala,

motives towards learning a new language and get your set-up ready.

Topics

Why Scala?

What is Scala?

Introducing Scala

Installing Scala

Journey – Java to Scala

First Dive – Interactive Scala

Writing Scala Scripts – Compiling Scala Programs

Scala Basics

Scala Basic Types

Defining Functions

IDE for Scala, Scala Community

Module 2

Scala Essentials

Learning Objectives – In this module, you will learn essentials of Scala that are

needed to work on it.

Topics

Immutability in Scala – Semicolons

Method Declaration, Literals

Lists

Tuples

Options

Maps

Reserved Words

Operators

Precedence Rules

If statements

Scala For Comprehensions

While Loops

Do-While Loops

Conditional Operators

Pattern Matching

Enumerations

Module 3

Traits and OOPs in Scala

Learning Objectives – In this module, you will understand implementation of OOPs

concepts in Scala and use Traits as Mixins

Topics

Traits Intro – Traits as Mixins

Stackable Traits

Creating Traits Basic OOPS – Class and Object Basics

Scala Constructors

Nested Classes

Visibility Rules

Module 4

Functional Programming in Scala

Learning Objectives – In this module, you will understand functional programming

know how for Scala.

Topics

What is Functional Programming?

Functional Literals and Closures

Recursion

Tail Calls

Functional Data Structures

Implicit Function Parameters

Call by Name

Call by Value

Module 5

Introduction to Big Data and Spark

Learning Objectives – In this module, you will understand what is Big Data, it’s

associated challenges, various frameworks available and will get the first hand introduction