Scala: Objekt-funktionale Programmierung für die JVM

Beschreibung

Scala bietet eine Fusion aus funktionaler und objektorientierter Programmierung für die JVM - dadurch entsteht eine elegante Sprache, die dank Typinferenz und einer knappen Syntax sehr klare und kompakte Programmierung ermöglicht. In diesem Seminar werden die wesentlichen Merkmale mit vielen Übungen vermittelt, so dass die Teilnehmer nach kurzer Zeit selbständig mit Scala entwickeln können.

Schulungsinhalte

Einführung

  • Entwicklungsumgebung (IntelliJ)
  • Grundlagen (REPL, erste Programme mit Scala, Compilieren)
  • Überblick Syntax (val und var, Datentypen und Operatoren)
  • Ähnlichkeiten von Java zu Scala
  • Typsystem (Typ-Inferenz, Any/AnyVal/AnyRef, Typumwandlungen)
  • Pakete und Imports

Funktionales Programmieren

  • Funktionen in Scala: Funktionen als Werte, Funktionsliterale, anonyme Funktionen, Funktionen höherer Ordnung, Funktionstypisierung, partially applied Functions, Rekursion und Optimierung mit Tail Recursion, Closures, Currying, Funktionskomposition
  • Überblick verschiedener syntaktischer Notationsformen, call-by-name-Parameter, Listen, Tupel und Optionals

Objektorientierung in Scala

  • Das Objektmodell von Scala: Methoden und ihr Zusammenhang mit Funktionen, Attribute, Kapselung und Sichtbarkeit, Klassen und Objekte, Mutability vs. Immutability, Konstruktoren, Vererbung und Traits, Thin/Rich Interfaces, Polymorphismus, Companion-Objekte, Methoden und Parametervarianten (default, named, variadisch)
  • Einführung von Case Classes, Vorteile und Eigenschaften
  • Pattern Matching
  • Algebraische Datentypen

Scala API

  • Überblick Scala Collections, Immutable vs. Mutable, Sequentielle Collections, Sets und Maps, Arrays und Strings, Streams
  • Performance-Eigenschaften von Collections
  • Zusammenspiel mit Java Collections

Fortgeschrittene Scala-Konzepte

  • For-Comprehensions: Iteration mit for, Generatoren, Definitionen und Filter, foreach, flatMap und filter/withFilter im Kontext von Comprehensions, Übersetzung von for-Comprehensions
  • Überblick monadisches Programmieren - am Beispiel von Listen, Options und Futures.
  • Überblick der Exception-Klassen, try und catch in Scala, Auslösen von Exceptions, Fehlerbehandlung in Scala, Try, Success und Failure
  • Ausblick: Programmieren mit generischen Typen, Implizite Typkonversionen in Scala, implizite Parameter, Type-Class-Pattern

Zielgruppe

Dieses Seminar richtet sich an Software-Entwickler, die noch keine oder wenig Erfahrungen mit der Programmiersprache Scala haben.

Zur Zeit sind keine Termine verfügbar.

SIE BENÖTIGEN HILFE ODER HABEN
FRAGEN ZU IHRER BUCHUNG?

Dr. Frank Raiser

+49 731 1403434-51
schulung@konzept-is.de

Nur einen Moment..
Wird geladen.