Moving to Java 9: Better Design and Simpler Code

Moving to Java 9: Better Design and Simpler Code
Moving to Java 9: Better Design and Simpler Code
English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 4h 02m | 2.25 GB

Java 9 introduces new features and functions that will make your code simpler and easier to read and will make for better deployment and documentation as well. There are also a number of changes, however, that might have unexpected consequences for your applications. This video covers the advantages of Java 9 and how to manage risks when migrating an application to this version.

Trisha Gee introduces the key new features and shows how to migrate existing Java 8 applications to Java 9 in order to make use of these powerful features.

You will learn how Java 9 enables:

  • More secure applications
  • Better design through improved encapsulation and separation of concerns
  • Cleaner, easier to read code

After quickly showing how to check your existing Java 8 code for compatibility before switching to Java 9, Trisha then reviews how Java 9 Modules work, what they are, why you might use them, and how to make your applications modular. In this training, she also covers what Reactive Streams are and how and where to use them, before moving on to look at JShell, the Java REPL.

Along the way, Trisha discusses the many advantages of switching to Java 9, including:

  • Better use of memory
  • Better performance of secure applications, locking, and graphics.
  • Better use of hardware
  • Better and easier to navigate documentation
  • Prettier graphics, particularly for Windows and Linux
  • Faster compilation

What You Will Learn

  • How best to prepare your application for Java 9
  • What is Jigsaw and the Java Platform Module System
  • What is the Reactive Streams API and why is it useful
  • What is a REPL and how to use JShell
Table of Contents

0.0 Moving to Java 9 - Introduction
0.1 Before You Begin
1.0 Learning objectives
1.1 Fixing Warnings in Java 8 and using JDeps
1.2 Compiling with Java 9
2.0 Learning objectives
2.1 What is Jigsaw
2.2 What is the Java Platform Module System (JPMS)
2.3 Creating Modules
2.4 Assembling custom runtime images with jlink
2.5 Introducing Modules to Existing Code
2.6 Using jdeps to identify module dependencies
2.7 Visualizing Dependencies
2.8 JPMS—Pros and Cons
3.0 Learning objectives
3.1 Reactive Streams in Java 9
3.2 Using Reactive Streams
3.3 The Power of Reactive Programming
3.4 Reactive Streams vs Java 8 Streams
4.0 Learning objectives
4.1 What is a REPL and what does it give us
4.2 Using the REPL inside IntelliJ IDEA
5.0 Learning objectives
5.1 Convenience Factory Methods for Collections
5.2 Milling Project Coin
5.3 New Methods on the Streams API
5.4 New Methods on Optional
5.5 Stack Walking API
5.6 Process API Updates
6.0 Learning objectives
6.1 Multi Release JAR Files
6.2 Updated Deprecation
6.3 Javadoc updates
6.4 Java 9 Features that may impact your application
7.0 Wrap Up
8.0 Moving to Java 9 - Summary