Home > Store

Moving to Java 9 LiveLessons: Better Design and Simpler Code (Video Training)

Register your product to gain access to bonus material or receive a coupon.

Moving to Java 9 LiveLessons: Better Design and Simpler Code (Video Training)

Online Video

  • Your Price: $119.99
  • List Price: $149.99
  • Estimated Release: Dec 8, 2017
  • About this video
  • Video accessible from your Account page after purchase.

Description

  • Copyright 2018
  • Edition: 1st
  • Online Video
  • ISBN-10: 0-13-485765-8
  • ISBN-13: 978-0-13-485765-7

4+ Hours of Video Instruction

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.

Description

In Moving to Java 9 LiveLessons, Java Champion 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

Related Code Files:
The code for this training can be found at https://github.com/trishagee/sense-nine.

Skill Level
  • Intermediate

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

Who Should Take This Course

Java developers who are working on an existing system. From a technical point of view, this is suitable for developers working with Java every day, but senior/lead developers and architects will find this talk useful to decide whether to apply these changes in their applications, and to provide guidance to the rest of their teams.

Course Requirements
  • Experience with the Java Programming language

Lesson Descriptions

LESSON 1: Getting Ready for Java 9
In this lesson, you look at what you can do to prepare your application for Java 9 without even having to use it. You look at which compiler warnings in Java 8 should be addressed and how to fix them. You see how to use the jdeps tool to find code that needs to be updated before you can use Java 9. You also step through an example of compiling a project in Java 9 that hasn't been through these steps to see what kind of problems you might face.

LESSON 2: The Java Platform Module System
Project Jigsaw and Java Modularity are the big ticket items for Java 9, so in this lesson you take a look at what these are. First, you find out what Project Jigsaw is and how this differs from the Java Platform Module System. Next, you walk through a simple example of creating a modular application, and you use the link tool to create a very small image of Java and our application. Then you migrate an existing application to use the Java Module System. You see how visualizing dependencies and modules can help you to better understand the design, and finally wrap up the lesson with a summary of the advantages and disadvantages of migrating to using JPMS.

LESSON 3: Reactive Programming with Java 9
This latest version of Java comes with the Reactive Streams API as part of the language, so first you need to understand what this is and what it means. You take a look at how your existing application could benefit from using the Reactive Streams API and show how to use it in your architecture. You then use two different Reactive libraries within your application to see what you can do with Reactive Programming. Finally, you explore how Reactive Streams are different from Java 8 Streams.

LESSON 4: JShell, the Java REPL
A Read Eval Print Loop for Java is a new way of working, so you need to understand what a REPL is and what it provides. You also take a quick look at how the introduction of a REPL can change the way you work inside your IDE.

LESSON 5: API Changes in Java 9
In this lesson, you learn about the wide variety of small language changes in Java 9 that are going to help you. First, you have Convenience Factory Methods for Collections, then the small changes from Milling Project Coin. You play with two new methods on the Streams API, take a look at the new methods on Optional, and go through practical examples of using the new Stack Walking API and the updates to the Process API.

LESSON 6: Other Interesting Changes in Java 9
In this lesson, you cover pretty much everything else in Java 9 you should be aware of that you haven't already looked at, including multi-release JAR files, the updated deprecation, updates to Javadoc, and other changes that might impact your application.

About Pearson Video Training

Pearson publishes expert-led video tutorials covering a wide selection of technology topics designed to teach you the skills you need to succeed. These professional and personal technology videos feature world-leading author instructors published by your trusted technology brands: Addison-Wesley, Cisco Press, Pearson IT Certification, Prentice Hall, Sams, and Que Topics include: IT Certification, Network Security, Cisco Technology, Programming, Web Development, Mobile Development, and more. Learn more about Pearson Video training at http://www.informit.com/video.



Sample Content

Table of Contents

Introduction

Before You Begin

Lesson 1: Getting Ready for Java 9
Learning objectives
1.1 Fixing warnings in Java 8 and using JDeps
1.2 Compiling with Java 9

Lesson 2: The Java Platform Module System
Learning objectives
2.1 What is Jigsaw?
2.2 What is the Java Platform Module System (JPMS)?
2.3 Creating Modules
2.4 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

Lesson 3: Reactive Programming with Java 9
Learning objectives
3.1 What is the Reactive Streams API?
3.2 Reactive Streams in Java 9
3.3 Using Reactive Streams
3.4 The Power of Reactive Programming
3.5 Reactive Streams vs Java 8 Streams

Lesson 4: JShell, the Java REPL
Learning objectives
4.1 What is a REPL and what does it give us?
4.2 Using the REPL inside IntelliJ IDEA

Lesson 5: API Changes in Java 9
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

Lesson 6: Other Interesting Changes
Learning objectives
6.1 Multi Release JAR Files
6.2 Updated Deprecation
6.3 Javadoc updates
6.4 Javadoc features that may impact your application

Wrap Up

Summary

Updates

Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership