Course Scala Programming

In the course Scala Programming the syntax and capabilities of the Scala programming language are discussed. Scala combines the power of object-oriented and functional programming and makes it possible to deliver functionality comparable to Java or C# with considerably less code.

  • Content
  • Training
  • Modules
  • General
  • Reviews
  • Certificate
  • Course Scala Programming : Content

    Scala Intro

    The Scala Programming course starts with a discussion of the concepts and characteristics of the Scala language compared to Java. Like Java, Scala produces code that is loaded into the Virtual Machine.

    Scala Syntax

    Next attention is paid to the syntax, the data types, variables, control structures and packages of Scala, as well as the possibilities to extend Scala and the use of Scala Frameworks such as the Lift Web Framework and the Play Framework.

    Functions and Closures

    Special attention is paid to the functional aspects of Scala such as first-class functions, higher order functions and the different ways of parameter transfer in Scala. Other typical language elements of Scala are also discussed, such as closures and deferred execution.

    Data Structures

    Subsequently data structures and collection types in Scala such as lists, maps, tuples and their respective higher order functions are covered.

    Classes and Traits

    Also the object oriented aspects of Scala such as inheritance, constructors, companion objects and overriding are treated. This includes support for duck typing. The concept of Scala Traits and the use of mixins is also discussed extensively.

    Pattern Matching

    A separate module is dedicated to pattern matching in Scala. This includes Match expressions, Match with variables and Match with Sequences. Wildcards are also covered and it is explained how to deal with any.

    Akka and Actors

    Finally attention is paid to concurrency in Scala with the Akka Framework and using Actors and Mailboxes and asynchronous communication.

  • Course Scala Programming : Training

    Audience Scala Programming Course

    The course Scala Programming is intended for Java, C# and other developers who want to learn programming in Scala or who want to explore the possibilities of Scala.

    Prerequisites Course Scala Programming

    To participate in this course knowledge and experience with an object oriented programming language such as Java or C# is required.

    Realization Training Scala Programming

    The theory is discussed on the basis of presentation slides. Demos are used to clarify the concepts. The theory is interspersed with exercises. The course material is in English and a modern IDE is used.

    Certification Scala Programming

    Participants receive an official certificate Scala Programming after successful completion of the course.

    Course Scala Programming
  • Course Scala Programming : Modules

    Module 1 : Scala Intro

    Module 2 : Language Syntax

    Module 3 : Functions and Closures

    Introducing Scala
    Basic Syntax
    Scala Concepts
    Scala Keywords
    Scala Characteristics
    Comments in Scala
    Interactive Shell
    Compiling Scala
    Scala HelloWorld
    Variables and Constants
    Java versus Scala
    Scala versus Java
    Scala Resources
    Variables and Scopes
    Scala Data Types
    Scala Type Hierarchy
    If and Else Statements
    Multiple Selection
    For and While Loops
    For Yield Filtering
    Breakable Blocks
    Formatted Strings
    Scala Arrays
    Multidimensional Arrays
    Scala Operators
    Reserved Symbols
    Scala Functions
    Call by Value and by Name
    Named Parameters
    Variable Arguments
    Default Parameters
    Recursive Functions
    Nested Functions
    Methods versus Functions
    Anonymous Functions
    First Class Functions
    Higher Order Functions
    Partially Applied Functions
    Currying Functions
    Simple Closure

    Module 4 : Data Structures

    Module 5 : Classes and Traits

    Module 6 : Pattern Matching

    Scala Collection Hierarchy
    Scala Lists
    Nills and Cons
    Head and Tail
    List Concatenation
    Scala Sets
    Concatenation Min and Max
    Intersections and Unions
    Scala Maps
    Keys and Values
    Scala Tuples
    Scala Options
    Scala Object Orientation
    Scala Classes
    Preventing State Change
    Object Singleton
    Companion Objects
    Abstract Classes
    Partial Trait Implementation
    Abstract Members
    Implicit Classes
    Unit returning Expressions
    Dealing with Any
    Match Expression
    Example Match Expressions
    Matching using case Classes
    Match with Variables
    Match with Sequences
    Extended Wildcard _*
    Scala versus Java
    Pattern Matching in Assignments
    Match with Types
    Matching on Tuples
    Pattern Matching with Option

    Module 7 : Scala Concurrency

    Concurrent Programming
    Akka Framework
    Actors in Akka
    Hello Akka World
    Actor Hierarchy
    Actor Information
    Supervision Strategies
    Top Level Supervisors
    Location Transparency
    Akka Guidelines
  • Course Scala Programming : General

    Read general course information
  • Course Scala Programming : Reviews

  • Course Scala Programming : Certificate