Major extensions to the language and the JDK
have been released with Java 8 - most prominently "Lambdas & Streams".
The new language features include lambda expressions and method references,
both of which support programming techniques known from functional languages.
Now that Java has multiple inheritance via default interface methods programming
techniques similar to mixins and traits are possible. In this seminar
attendants will gain an overview of all new language features and will
practice their use in hand-on labs.
Mastering lambdas is the prerequisite for successfully using streams.
Streams are an extension to the JDK collection, which underwent a major
overhaul in Java 8. Streams provide a functional API for sequential
and parallel bulk operations on sequences of elements. The seminar provides
an overview of the stream API from basics such as forEach-filter-map-reduce
to advanced operations such as flatMap and collectors. Attendants
will practice the use of streams in numerous labs.
The key motivation for leaning about streams is the convenient way in
which they support parallelized access to sequences. In order to understand
the complex performance model of parallel stream operations the seminar
provides insights into the inner workings of streams.
Working knowledge of Java; in-depth experience
with Java not required.
Workshops and hands-on labs
This is a course for Java programmers who want to use lambdas and streams
in Java in practice and need a thorough understanding of these novel
language feature and APIs in Java. The course is designed to build on existing
expertise as Java programmers and take the attendants' skills one step
further. Prerequisite for these seminars is at least 1 year of experience
with Java or equivalent knowledge. Experience with lambdas or streams are