Free Course Image Scala Programming Language

Free online courseScala Programming Language

Duration of the online course: 5 hours and 26 minutes

New course

Master Scala programming language online. Learn from installation to advanced functionality and data structures in this comprehensive course by ProgrammingKnowledge.

In this free course, learn about

  • Getting Started with Scala and Tooling
  • Scala Basics: Syntax, Types, and Control Flow
  • Functions and Functional Programming Foundations
  • Working with Scala Collections and Options
  • Object-Oriented and Advanced Scala Features

Course Description

Discover the power of Scala with this comprehensive course by ProgrammingKnowledge, designed specifically for those passionate about Information Technology and Programming Languages. Ideal for programmers familiar with languages like Python, Ruby, Java, and C, this course provides a solid foundation in Scala programming, covering everything from basic installation to advanced programming techniques.

The course begins with an introduction to Scala and its Build Tool (SBT), guiding you through the installation process on Windows, Linux, and Mac operating systems. You'll learn how to set up your environment to begin coding in Scala, including using Scala IDE and Intellij IDEA for your first projects.

As you progress, delve into data types, variables, and control structures with tutorials on string interpolation, loops, and match expressions. The course further explores the diverse functionality available in Scala, like functions, anonymous functions, higher-order functions, and the intriguing concept of closures and currying.

Gain insight into Scala's robust data structures, including strings, arrays, lists, sets, maps, tuples, and the options type, all while mastering higher-order methods like map, flatMap, flatten, and filter. Enhance your understanding with practical applications of reduce, fold, and scan operations.

Further your programming expertise with detailed insights into Scala classes, auxiliary constructors, class inheritance, and abstract classes. The course wraps up with an exploration of advanced topics like lazy evaluation and Scala traits, equipping you with the skills to handle real-world programming challenges.

Whether you're a beginner or an experienced programmer, this in-depth Scala course offers the knowledge and practical experience needed to excel in modern programming environments.

Course content

  • Video class: Scala Tutorial 1 - Introduction to Scala 07m
  • Exercise: What best describes Scala's type system?
  • Video class: Scala Tutorial 2 - Introduction to SBT (Scala Build Tool) 03m
  • Exercise: SBT fundamentals: dependencies and language support
  • Video class: Scala Tutorial 3 - How to Install and Setup SBT on Windows 10 16m
  • Exercise: When configuring JAVA_HOME on Windows for Scala and SBT, which location should it point to?
  • Video class: How to Install Scala and SBT on Ubuntu Linux 10m
  • Exercise: Which command verifies that Scala is installed and shows its version on Ubuntu?
  • Video class: How to install Scala on Mac 07m
  • Exercise: Which command reloads your bash profile so the new Scala PATH is applied in the current terminal
  • Video class: Scala Tutorial 4 - Data Types and Variables 15m
  • Exercise: In Scala, what type is inferred for var d = 12.3 by default?
  • Video class: Scala Tutorial 5 - How to Install Scala IDE Windows 10 First Scala Hello World Application 10m
  • Exercise: Understanding Scala object in HelloWorld
  • Video class: How to setup Scala on Intellij IDEA IDE First SBT/Scala project 08m
  • Exercise: Where should Scala source files be placed in a typical SBT project in IntelliJ IDEA?
  • Video class: Scala Tutorial 6 - Scala String Interpolation 07m
  • Exercise: Which Scala string interpolator prints escape sequences like \n literally without creating a newline?
  • Video class: Scala Tutorial 7 - Scala - IF ELSE Statements 09m
  • Exercise: In Scala, which statement about if and else is correct?
  • Video class: Scala Tutorial 8 - Scala while Loop and do-while Loop 06m
  • Exercise: Scala while vs do-while and increment syntax
  • Video class: Scala Tutorial 9 - Scala For Loop 10m
  • Exercise: In Scala for loops, what is the clause i <- 1 to 5 called?
  • Video class: Scala Tutorial 10 - Match expressions 06m
  • Exercise: In Scala match expressions, which pattern is used as the default case when no other case matches?
  • Video class: Scala Tutorial 11 - Scala Functions 10m
  • Exercise: In Scala functions, which statement about returning values is correct?
  • Video class: Scala Tutorial 12 - Anonymous Functions Default Values Function more ... 08m
  • Exercise: What is the result of calling add(60) for def add(x: Int = 45, y: Int = 15): Int = x + y?
  • Video class: Scala Tutorial 13 - Scala - Higher Order Functions 09m
  • Exercise: What is the result of calling: math(50, 20, _ + _) when math applies the passed function to its two Double arguments?
  • Video class: Scala Tutorial 14 - Scala - Partially Applied Functions 08m
  • Exercise: Understanding Partially Applied Functions in Scala
  • Video class: Scala Tutorial 15 - How to use closures in Scala 05m
  • Exercise: In Scala, when is a closure considered pure?
  • Video class: Scala Tutorial 16 - Function Currying in Scala 09m
  • Exercise: In Scala currying, how do you create a partially applied function that fixes the first argument to 50 for def add3(x: Int)(y: Int): Int = x + y
  • Video class: Scala Tutorial 17 - Strings 10m
  • Exercise: Scala Strings and Formatting Behavior
  • Video class: Scala Tutorial 18 - Arrays 10m
  • Exercise: Scala Arrays: Core Characteristics
  • Video class: Scala Tutorial 19 - Lists 14m
  • Exercise: Scala List fundamentals
  • Video class: Scala Tutorial 20 - Scala Sets 12m
  • Exercise: Scala Sets: Which statement is correct
  • Video class: Scala Tutorial 21 - Scala Maps 12m
  • Exercise: In a Scala Map literal, what happens if the same key is defined more than once?
  • Video class: Scala Tutorial 22 - Scala Tuples 11m
  • Exercise: Which statement about Scala tuples is true?
  • Video class: Scala Tutorial 23 - Scala Options Type 10m
  • Exercise: Safely extracting from an Option returned by Map.get in Scala
  • Video class: Scala Tutorial 24 - map, flatMap, flatten and filter (Higher-order Methods) 13m
  • Exercise: What does flatMap do in Scala collections?
  • Video class: Scala Tutorial 25 - Reduce, fold or scan 11m
  • Exercise: What is the key difference between foldLeft and reduceLeft on a Scala collection?
  • Video class: Scala Tutorial 26 - Scala Classes 09m
  • Video class: Scala Tutorial 27 - Auxiliary constructors 06m
  • Exercise: Which rule must every auxiliary constructor in Scala follow?
  • Video class: Scala Tutorial 28 - How To Extend Class - Class Inheritance 11m
  • Exercise: Which keyword is required in Scala when a subclass provides its own implementation of a superclass method?
  • Video class: Scala Tutorial 29 - Scala Abstract Class 06m
  • Exercise: In Scala what does declaring a class abstract imply and how is an abstract method defined
  • Video class: Scala Tutorial 30 - Scala Lazy Evaluation 06m
  • Exercise: Identify the Scala parameter type that enables lazy evaluation
  • Video class: Scala Tutorial 31 - Scala Trait 07m
  • Exercise: Scala Traits and Multiple Inheritance

This free course includes:

5 hours and 26 minutes of online video course

Digital certificate of course completion (Free)

Exercises to train your knowledge

100% free, from content to certificate

Ready to get started?Download the app and get started today.

Install the app now

to access the course
Icon representing technology and business courses

Over 5,000 free courses

Programming, English, Digital Marketing and much more! Learn whatever you want, for free.

Calendar icon with target representing study planning

Study plan with AI

Our app's Artificial Intelligence can create a study schedule for the course you choose.

Professional icon representing career and business

From zero to professional success

Improve your resume with our free Certificate and then use our Artificial Intelligence to find your dream job.

You can also use the QR Code or the links below.

QR Code - Download Cursa - Online Courses

More free courses at Programming Languages ( Python, Ruby, Java, C )

Download the App now to have access to + 3300 free courses, exercises, certificates and lots of content without paying anything!

  • 100% free online courses from start to finish

    Thousands of online courses in video, ebooks and audiobooks.

  • More than 48 thousand free exercises

    To test your knowledge during online courses

  • Valid free Digital Certificate with QR Code

    Generated directly from your cell phone's photo gallery and sent to your email

Cursa app on the ebook screen, the video course screen and the course exercises screen, plus the course completion certificate

+ 9 million
students

Free and Valid
Certificate

60 thousand free
exercises

4.8/5 rating in
app stores

Free courses in
video and ebooks