Stuart Marks | Devoxx

Devoxx Belgium 2018
from Monday 12 November to Friday 16 November 2018.

Stuart Marks is a Consulting Member of Technical Staff in the Java Platform Group at Oracle. He is currently working on a variety of JDK core libraries projects, including Collections, Lambda, and Streams, as well as improving test quality and performance. As his alter ego "Dr Deprecator" he also works on the Java SE deprecation mechanism. He has previously worked on JavaFX and Java ME at Sun Microsystems. He has over twenty years of software platform product development experience in the areas of window systems, interactive graphics, and mobile and embedded systems. Stuart holds a Master's degree in Computer Science and a Bachelor's degree in Electrical Engineering from Stanford University.

See also http://stuartmarks.wordpress.com

Lambdas and Streams Master Class Part 2

Deep Dive


What is the state of lambda expressions in Java 11? Lambda expressions are the major feature of Java 8, having an impact on most of the API, including the Streams and Collections API. We are now living the Java 11 days; new features have been added and new patterns have emerged. This highly technical Deep Dive session will visit all these patterns, the well-known ones and the new ones, in an interactive hybrid of lecture and laboratory. We present a technique and show how it helps solve a problem. We then present another problem, and give you some time to solve it yourself. Finally, we present a solution, and open for questions, comments, and discussion. Bring your laptop set up with JDK 11 and your favorite IDE, and be prepared to think!

This session is part 2 of 2 parts. In part 2 we will cover techniques for using streams, Optional, and Collectors.

Lambdas and Streams Master Class Part 1

Deep Dive


What is the state of lambda expressions in Java 11? Lambda expressions are the major feature of Java 8, having an impact on most of the API, including the Streams and Collections API. We are now living the Java 11 days; new features have been added and new patterns have emerged. This highly technical Deep Dive session will visit all these patterns, the well-known ones and the new ones, in an interactive hybrid of lecture and laboratory. We present a technique and show how it helps solve a problem. We then present another problem, and give you some time to solve it yourself. Finally, we present a solution, and open for questions, comments, and discussion. Bring your laptop set up with JDK 11 and your favorite IDE, and be prepared to think!

This session is part 1 of 2 parts. In part 1 we will cover lambdas, functional interfaces, default methods, higher-order functions, and comparators.

Local Variable Type Inference: Threat or Menace

BOF


Local variable type inference was introduced as a new Java language feature in Java SE 10. Gone are the days of explicitly having to define the type of a variable; let the compiler do it for you with the magic of var.

At first sight, this looks like a small change that will eliminate unnecessary boiler-plate code and reduce how much typing (on the keyboard) is required to maintain strong typing (of the language). However, as with many features, there are some unexpected nuances as well as both good and bad use cases.

In this BoF, Stuart and Simon will take a series of examples of the use of var and discuss their technical merits. We’ll involve the audience to provide different perspectives on why developers would or would not use var in these ways.

Time will be made available for attendees to provide examples they may have encountered, enabling discussion of their merits.

Var with Style: Local Variable Type Inference in Java 10

Conference

Java 10 introduced a feature called Local Variable Type Inference, which lets programmers declare local variables using 'var' instead of using an explicit type. This feature enables one to write code that is more concise and more readable. However, it's also possible for this feature to be misused, obfuscating code instead of making it more readable. The Java Team has published a set of style guidelines that help direct programmers toward uses of 'var' that improve code quality and that help them avoid uses that detract from code quality. This session gives an overview of the new 'var' feature and describes these style rules. The presentation is liberally supplemented with code examples of both good uses and misuses of 'var'.

Sign-in
Make sure to download the Android or iOS mobile schedule.