Schedule outline : Day 2

A session at Modern development with Java

Tuesday 12th December, 2017

9:00am to 5:00pm (GMT)

Day 2

Easy Data Parallelism

-What is Data Parallelism?
-Why is this important?
-Parallelising your streams
-Parallel Gotchas
-Misuse of reduce
-Don’t use Locks
-Danger of mutability
-Decomposing performance

Testing & Debugging Lambda Expressions

-Unit testing lambda expressions
-Debugging with laziness
-Stack traces

Practical: Hands on Debugging

Default and static methods on interfaces

-Motivation for default methods
-Static methods in interface
-Useful default methods
-Patterns for default methods
-Resolution rules

Enhanced Design with Lambdas

-Execute around: resource handling
-Deferred execution: Logging
-Design patterns
-Processing pipeline

Date & Time in Java 8

-The problem with existing date and time libraries
-The core classes: LocalDate/LocalTime
-Common API Patterns

Optional data types

-The problem with null
-How Optional improves upon null
-How to use Optional in your code
-Creating Optional objects
-Default values and actions
-Transforming Optionals with map
-Chaining Optionals with flatMap
-Rejecting values with filter

Enhanced Concurrency with Lambdas

-Introduction to Concurrency
-Future and ExecutorService

About the speakers

This person is speaking at this event.
Jim Gough

Java developer from London interested in communities and helping move Java forwards.

This person is speaking at this event.
Raoul-Gabriel Urma

PhD at University of Cambridge. Writing a book about Java 8: http://www.manning.com/urma

This person is speaking at this event.
Richard Warburton

Software Engineer, interested in deep dive performance issues and compiler verfication, @adoptajsr and @adoptopenjdk , associate @ljcjug, PhD, Londoner

Sign in to add slides, notes or videos to this session

Tell your friends!


Time 9:00am5:00pm GMT

Date Tue 12th December 2017

Session Hash Tag


Short URL


View the schedule


See something wrong?

Report an issue with this session