Schulung Java-Programmierung mit Lambdas und Streams

Beschreibung/Inhalt

Mit Java 8 ist die Programmiersprache Java um zahlreiche Sprachmittel erweitert worden. Dazu gehören Lambda-Ausdrücke und Methoden-Referenzen, aber auch Default-Methoden in Interfaces. Die neuen Sprachmittel verändern den Stil, in dem Java-Entwickler programmieren, denn sie unterstützen Programmiertechniken, die bislang in Java nicht möglich waren. Die Lambdas und Methoden-Referenzen ermöglichen Techniken, wie sie aus der funktionalen Programmierung bekannt sind. Über Default-Methoden wird Mehrfachvererbung in Java unterstützt; damit werden Programmtechniken wie Traits und Mixins möglich.

Zusätzlich zur Sprache sind zentrale Abstraktionen des JDK wie die Collections umfangreich überarbeitet worden. Sie bieten seit Java 8 funktionale Schnittstellen für Zugriffe auf Elemente einer Collection über sogenannte Streams. Die Streams ermöglichen sowohl sequentiellen als auch hochperformanten parallelen Zugriff auf die Elemente einer Collection. Letzteres ist insbesondere für Applikationen auf Multicore- und Multi-CPU-Architekturen von Bedeutung, da es sehr bequem eine feingranulare Parallelisierung ermöglicht.

Die Benutzung der Streams ist ohne die neuen Sprachkonstrukte undenkbar. Performantes paralleles Programmieren ist ohne die Streams schwer vorstellbar. Dieses Seminar bietet Java-Programmierern die Möglichkeit, die Sprachneuerungen inkl. neuer Programmiertechniken zu erlernen, das umfangreiche Stream-API kennen zu lernen und das komplexe Performance-Modell der parallelen Streams zu verstehen.

Das Seminar liefert die theoretischen Grundlagen für die Benutzung von Lambdas und Streams. In zahlreichen praktischen Übungen erhält jeder Teilnehmer die Gelegenheit, die vorgestellten Sprachmittel und APIs auszuprobieren und zu verinnerlichen.

Neue Sprachmittel in Java 8
Lambda-Ausdrücke
Methoden- und Konstruktor-Referenzen
Funktionale Interfaces und Typinferenz
Default- und statische Methoden in Interfaces
Laufzeitrepräsentation von Lambdas
Programmieren mit Lambdas
Stream-API
ForEach-Filter-Map-Reduce
Fluent Programming
flatMap() & Mapper
collect() & Collectoren
Stream Internals
Pipelining
Non-Interference-Anforderung
Operationen mit/ohne Zustand
Sequentielle und parallele Ausführung
Besonderheiten bei parallelen Streams
Performanceverhalten der Stream-Operationen

Dauer
Auf Wunsch. Gerne geben wir Ihnen eine Empfehlung zur notwendigen Schulungsdauer, wenn Sie uns in der Anfrage Ihre Vorkenntnisse und Ziele nennen.
Ort
Online oder in Deutschland, Österreich und der Schweiz an Ihrem Firmensitz
Schulungsdidaktik
Nach Ihrer Wahl: Klassische Schulung mit PC-Übungen, reine Präsentation ohne PC-Übungen oder interaktiver Workshop mit Beratungsanteil