Introduction to Scala 

Course & Training

Introduction to development with Scala.

Two to four days of intensive entry-level development with Scala. Introduction to Scala, a high-level programming language that allows to perfectly combine functional and object-oriented programming on the JVM.

In-House Course:

We are happy to conduct tailored courses for your team - on-site, remotely or in our course rooms.

Request In-House Course

   

Content:


Scala is developed at EPFL by Martin Odersky and his team. Scala is a great and fascinating programming language. Many successful proconcurrent projects (e.g. Spark, Kafka) as well as companies (e.g. LinkedIn, Twitter) are based on Scala. Scala is high-level and combines functional and object-oriented development perfectly. Scala programs can be compiled for the JVM or Javascript and thus have access to huge ecosystem.

We build together incrementally a sample application that illustrates the following topics:

- Overview Scala
- Functional
- Object Oriented
- classes
- objects
- Traits
- imports
- case classes
- Control constructs
- collections
- Pattern matching
- Future and Generics
- etc.

We focus on a specific selection of topics to look at and understand in detail.


Disclaimer: The actual course content may vary from the above, depending on the trainer, implementation, duration and constellation of participants.

Whether we call it training, course, workshop or seminar, we want to pick up participants at their point and equip them with the necessary practical knowledge so that they can apply the technology directly after the training and deepen it independently.

Goal:

By the end of the course, attendees will be able to build simple applications with Scala and won't want to use any other language.


Duration:

 2 Days (Is individually adapted for in-house courses.)


Form:

while(true) {coding... Coffee... Coding...} very much with read-eval-print-loop (REPL).
And if we need breaks with the code then abstract on the whiteboard and slides.... But real breaks are there too!


Target Audience:

Software developers who want to get an efficient start into the development with Scala and want to develop first projects with it. As well as a basis for participants of our course "Akka with Scala".


Requirements:

Experience developing with an object-oriented or functional programming language (Java, C#, C++, Golang, Rust, TypeScript, etc.).


Preparation:

After registration, each participant will receive a questionnaire with installation instructions. Matching the answers we send an individual feedback.We recommend the use of IntelliJ and sdkman.

Request In-House Course:

In-House Kurs Anfragen

Waitinglist for public course:

Sign up for the waiting list for more public course dates. Once we have enough people on the waiting list, we will determine a date that suits everyone as much as possible and schedule a new session. If you want to participate directly with two colleagues, we can even plan a public course specifically for you.

Waiting List Request

(If you already have 3 or more participants, we will discuss your preferred date directly with you and announce the course.)

More about Scala



Scala is a modern, highly expressive programming language that elegantly combines functional and object-oriented paradigms. It runs on the JVM and enables seamless interoperability with Java, while offering a significantly more expressive type system and more concise syntax. Scala is developed at EPFL by Martin Odersky and his team and is the foundation of well-known projects such as Apache Spark and Apache Kafka.




History


Scala was created by Martin Odersky at EPFL in Lausanne and first publicly released in 2003. Odersky, who had previously contributed to the development of the Java compiler, aimed to create a language that combines the strengths of functional languages with the widely adopted JVM platform. The name "Scala" stands for "Scalable Language", reflecting the intent to be suitable for both small scripts and large-scale systems.


Over the years, Scala became the preferred language for Big Data projects and reactive systems. With Scala 3, released in 2021, the language underwent a comprehensive overhaul with a cleaner type system and simplified syntax. Today, Scala is considered one of the most advanced JVM languages and enjoys great popularity in data engineering and backend development.