YOUR NEXT STEP

Scala Programming Language by ProgrammingKnowledge

ProgrammingKnowledge · 34 lessons · Free on YouTube

LESSON 3 / 34

Scala Tutorial 3 - How to Install and Setup SBT on Windows 10

←Next

About this course

Scala brings together the best of object-oriented and functional programming, making it a powerful choice for building reliable software on the JVM. If you want a language that can feel familiar when you come from Java, yet opens the door to concise, expressive functional patterns, this free online course helps you make that transition with confidence and practical understanding.

You’ll start with the essentials: what Scala is, how its type system works, and how to get a clean development workflow using SBT. Instead of getting stuck on setup, you’ll learn how to install and configure your environment across Windows, Ubuntu, and macOS, so you can focus on writing code and running projects the way real Scala developers do. You’ll also get comfortable working in popular IDEs and structuring source files in a typical Scala project.

As you progress, you’ll build a strong foundation in core language features like variables, data types, and string interpolation, then move into the control structures you’ll use every day: if/else logic, looping constructs, and expressive match expressions. From there, the course takes you deeper into functions—one of Scala’s biggest strengths—covering anonymous functions, default parameters, higher-order functions, closures, partial application, and currying, so you can read and write idiomatic Scala code without confusion.

To help you become productive with real-world programs, you’ll practice working with common collections and data structures such as arrays, lists, sets, maps, tuples, and the Option type. You’ll learn to transform data using methods like map, flatMap, filter, reduce, fold, and scan, gaining the mental model needed to handle pipelines of data safely and cleanly.

Finally, you’ll strengthen your object-oriented toolbox with classes, auxiliary constructors, inheritance, abstract classes, and traits, and you’ll see how lazy evaluation can improve efficiency and control. With quick checks and exercises along the way, you’ll reinforce key concepts and leave prepared to take on Scala projects more confidently—whether you’re aiming for backend development, big data ecosystems, or simply sharper programming skills.

THERE IS ALWAYS MORE

Keep feeding your curiosity.

Explore more courses
From the community, for the community

Found a great course?

Share it. Our team will review it before adding it to the catalog.