By now Java 8's features are well understood, but some practical details are still unclear. Did you ever wonder...
- how to create a "lambda-enabled" API?
- whether your methods should return or even accept
Stream
s and how that might impact your design? - how to write readable
Stream
pipelines, especially when exceptions are involved? - about the details of and opinions on
Optional
? - how to use default methods to evolve interfaces without breaking client code?
This talk discusses these and other advanced topics of Java 8, so you can get the most out of its awesome features.
▚Slides
Here's the current version of the slides.
I also embedded them below. If they're focussed, you can navigate with arrow keys or swipes (they're two-dimensional, with chapters on the horizontal axis and chapter content layed out vertically). Use Page Up/Down for linearized order and ? for more shortcuts.
▚Video
Here's a good recording of the talk. I hope you'll like it.
▚Past Presentations
I gave this talk a few times before. See below for links to slides (as they were at that very event), videos, and other information.