The Scala Programming Language Training in Switzerland

  • Learn via: Online Instructor-Led / Classroom Based / Onsite
  • Duration: 5 Days
  • Price: Please contact for booking options
  • Upcoming Date:
  • UK & Switzerland Based Global Training Provider

The Scala Programming Language was invented in 2004 in an attempt to bring functional programming to the jvm, and the java development community. It has risen to prominence in recent years as the de-facto language to compliment and replace java in existing teams, and as an advanced and capable language on greenfield projects.

Scala combines advanced techniques long established in the functional programming community with the best practices of object-orientation, allowing developers to pick and chose a style and an approach that suits their team and their problems.

By the end of this course delegates will have a clear understanding of object orientation and functional programming, and in particular, all the major features of scala which enable these styles of programming to be used and combined.

The course is divided in to 15 modules (listed in the overview) delivered over five days with an attention to an interactive Q&A-style approach to teaching and exercise practice.

We can organize this training at your preferred date and location. Contact Us!

Prerequisites

Delegates must have prior programming experience in java or a related object-oriented language.

Training Outline

Day 1

1 Introduction 

  • Why scala?
  • Libraries
  • Static typing
  • Compositional syntax
  • OO
  • Functional
  • Powerful
  • Paradigms
  • OO
  • Functional
  • Running scala
  • Anatomy of scala programs
  • Try the repl
  • Scalac
  • Scala interpreter
  • Sbt

1 Fundamentals

  • Language
  • Objects
  • Calling methods
  • Operators as methods
  • Values and variables
  • Types
  • Basic types
  • Boolean
  • Numeric types
  • Unit
  • Strings
  • String methods
  • Introduction to collections
  • Type arguments
  • Tuples, Lists, Maps

1 Flow

  • Branching, matching & selecting
  • Conditionals
  • Intro to pattern matching
  • Destructuring
  • For comprehensions
  • Yield vs Unit
  • Comprehensions over lists
  • Comprehensions over maps
  • Comprehensions over ranges
  • Option
  • Multiple extraction
  • Guards
  • Ranges
  • Let expressions
  • While loops

Day 2

2 Methods

  • Code blocks
  • Methods
  • Method bodies
  • Returning unit
  • Passing arguments
  • Variadics
  • Def vs val
  • Lazy vals
  • Lazy arguments
  • Recursion

2 Functions

  • What Is Functional Programming?
  • Pure Functions
  • Functions
  • The Function Type
  • ‘Function’ vs Method
  • Higher Order Functions
  • Functions as Data
  • Currying
  • Aside: Type Aliases

2 Collections

  • Review: types
  • Collections heirachy
  • Creating collections
  • Range
  • Array & array buffer
  • List & list buffer
  • Vector
  • Maps
  • Sets
  • Empty
  • Idioms
  • Pattern matching
  • For comprehnsions review
  • Zipping
  • Traits

Day 3

3 Transformation

  • Streams
  • Combinators
  • .map & .flatMap
  • Folding & Reducing
  • .exists and .forall
  • Option
  • For comprehensions
  • Foreach & Flatmap
  • Pattern matching
  • Review
  • Casting
  • Sequences
  • For-yield-match
  • Regex
  • Guards
  • Option

3 OO

  • Classes
  • Reading class definitions
  • Defining classes
  • Constructors
  • Properties
  • Method overloading
  • Java inspection of scala classes
  • Getters and setters
  • Operator methods
  • Objects
  • The object keyword
  • Companions
  • The mechanism of pattern matching
  • Case classes
  • Pattern matching with case classes
  • Aside: case objects

3 Inheritance

  • Inheritance: a type relation
  • Inheritance: class relationship
  • Overriding methods
  • Overriding tostring
  • Calling the parent method
  • Abstracts
  • Traits
  • Trait inheritance
  • Composing objects with traits
  • The meaning of super
  • Traits as mixins
  • Self types
  • Cake pattern
  • Aside: type members

Day 4

4 Design

  • Imports
  • Package objects
  • Algebra
  • Algebraic data types: defining
  • Algebraic data types
  • Example: document store
  • Tuples types
  • Generics
  • Type arguments
  • Variance
  • Special types
  • Option
  • Example: user data
  • Bad: exceptions
  • Try
  • Either

4 SBTest

  • Simple build tool
  • Build files
  • Creating a project
  • Dependencies
  • Project structure
  • Running tests
  • Sbt task runner
  • Testing
  • Type systems as tests
  • Using type systems
  • Assertions
  • Scala test
  • Flatspec
  • Featurespec
  • Matchers

4 Implicits

  • Implicit conversions
  • Implicit conversions: def
  • Implicit conversions: implicit classes
  • Implicit parameters
  • Contexts
  • Scoping
  • Type classes
  • Typeclasses with implicit classes
  • Without typeclasses
  • Typeclasses: generalizing
  • Typeclasses: implicit objects
  • Typeclasses: multiple instances

Day 5

5 HigherKinds

  • Review: Polymorphism
  • Review: Typeclasseses: Monoid
  • Scalaz
  • Sbt for Scalaz
  • Simple Typeclass: Equal
  • Simple Typeclass: Order
  • Simple Typeclass: Implementing Equal
  • Kinds
  • Higher-kinded Types: Functor
  • Generalizing Functor
  • Higher-kinded Types: Applicative
  • Monads

5 Appendix

  • Concurrency
  • Libraries



Why Choose Us

Experience The Scala Programming Language in Switzerland through Bilginç IT Academy's live and interactive virtual classroom environment, accessible from your home, office, or any location. Connect with expert trainers in real time and bring the energy of classroom learning into the digital experience.

  • Live Instructor-Led Sessions: Join scheduled training sessions with your instructor and fellow delegates in real time.
  • Interactive Learning Experience: Take part in discussions, practical exercises, group activities, and Q&A sessions throughout the course.
  • Expert Trainer Network: Learn from experienced trainers with strong industry backgrounds and practical field expertise.
  • Over 30 Years of Training Expertise: Benefit from Bilginç IT Academy's long-standing experience in delivering professional training since 1995.
  • Flexible and Scalable Delivery: Access live virtual classrooms from Switzerland and worldwide, with flexible planning options for individual and corporate training needs.

Experience The Scala Programming Language in a focused classroom environment in Switzerland. Bilginç IT Academy's carefully selected training venues provide a professional setting where delegates can interact directly with expert trainers and peers.

  • Experienced Trainers: Learn from specialists with extensive field experience and real-world knowledge.
  • Professional Training Venues: Attend courses in comfortable, well-equipped classrooms designed to support effective learning.
  • Focused Classroom Experience: Benefit from limited class sizes that encourage discussion, interaction, and personalized support.
  • Quality-Driven Learning: Develop practical skills through structured, up-to-date, and professionally designed training content.

Meet your team's training needs with Bilginç IT Academy's onsite The Scala Programming Language in Switzerland solution, delivered at your office or preferred location. Align your team's development with your business goals through a training experience tailored to your organization.

  • Tailored Course Content: Adapt the training program to your organization's projects, team structure, and specific business requirements.
  • Time and Cost Efficiency: Reduce travel, accommodation, and operational costs while maximizing the value of your training investment.
  • Team-Focused Learning: Help your employees develop around the same knowledge base and strengthen collaboration across your organization.
  • Simplified Planning and Tracking: Manage the training process, participant development, and organizational requirements with greater control.


Contact us for more detail about our trainings and for all other enquiries!

The Scala Programming Language Training Course in Switzerland Schedule

Join our public courses in our Switzerland facilities. Private class trainings will be organized at the location of your preference, according to your schedule.

We can organize this training at your preferred date and location.
25 Juni 2026 (5 Days)
Zurich, Geneva, Basel, Bern
03 Juli 2026 (5 Days)
Zurich, Geneva, Basel, Bern
12 Juli 2026 (5 Days)
Zurich, Geneva, Basel, Bern
17 Juli 2026 (5 Days)
Zurich, Geneva, Basel, Bern
19 Juli 2026 (5 Days)
Zurich, Geneva, Basel, Bern
09 September 2026 (5 Days)
Zurich, Geneva, Basel, Bern
10 September 2026 (5 Days)
Zurich, Geneva, Basel, Bern
17 September 2026 (5 Days)
Zurich, Geneva, Basel, Bern

Switzerland is globally recognized as the gold standard for fintech, precision engineering, and data privacy. Zurich and Geneva are not only financial capitals but also critical hubs for blockchain innovation and high-security IT infrastructure. Home to ETH Zurich, one of the world's leading technical universities, the Swiss ecosystem attracts the brightest minds in cryptography and systems engineering. Our IT training services in Switzerland are designed for those who operate in high-stakes environments where accuracy and security are paramount. We offer specialized courses that cover the full spectrum of modern technology, from secure cloud management to advanced data analytics, ensuring that professionals in the Swiss confederation maintain their competitive edge in a digital-first world.

By using this website you agree to let us use cookies. For further information about our use of cookies, check out our Cookie Policy.