How is Java 9 going to change the way developers work?
The feature we always hear about whenever Java 9 is in the news is Jigsaw, modularity. But this doesn’t scratch the same developer itch that Java 8’s lambdas and streams did, and we’re left with a vague sensation that the next version might not be that interesting.
Java 9 actually has a lot of great additions and changes to make development a bit nicer. These features can’t be lumped under an umbrella term like Java 8’s lambdas and streams, the changes are scattered throughout the APIs and language features that we regularly use.
In this presentation Trisha will show, via live coding:
What the Java Platform Module System is and how to make your code modular
The improvements to the Streams API that make it easier to control infinite streams
How the Collections convenience methods simplify code
Along the way we’ll bump into other Java 9 features, including some of the additions to interfaces and Optional, and a number of other small changes that make coding in Java a bit nicer than it was before.
These are all the available videos, with the most recent at the top. Usually, the more recent the talk the more polished, therefore usually they’re better. With this talk, it’s more a case of showcasing / focusing on different aspects in different versions.
This JetBrains webinar is the most up-to-date version of the talk, and includes more Java 9 features than any of the
others, including a quick look at JShell. It has almost no content on Reactive Streams though, so check out one of
the other videos if this is what you’re interested in.
QCon London. Much more focus on Reactive Streams: what they are, how they work, and how to migrate an app to use the Reactive Streams API.
These are the latest slides. For earlier versions, see Slideshare.
The code for this presentation was originally created to demonstrate Java 8 code in
Java 8 in Anger, take a look at the videos there to see more background on the application and how it used Java 8 Streams and Lambda Expressions for the core business logic. The code and the presentation
evolved to include some Java 9 features.
Original Java 8 code comes from https://github.com/trishagee/sense, the master branch has the most up-to-date final working Java 8 application. JUnit 5 tests come from the junit-5 branch. Java 8 and 9 features live side-by-side in yow-brisbane. That app was built with Java build 9-ea+146, but does not work with build 9-ea+156