Java 8 in Action video edition

Video description

In Video Editions the narrator reads the book while the content, figures, code listings, diagrams, and text appear on the screen. Like an audiobook that you can also watch as a video.

"A great and concise guide to what’s new in Java8, with plenty of examples to get you going in a hurry."
Jason Lee, Oracle

Java 8 in Action is a clearly written guide to the features of Java 8. It begins with a practical introduction to lambdas, using real-world Java code. Next, it covers the new Streams API and shows how you can use it to make collection-based code radically easier to understand and maintain. It also explains other major Java 8 features including default methods, Optional, CompletableFuture, and the new Date and Time API.

With Java 8's functional features you can now write more concise code in less time, and also automatically benefit from multicore architectures. It's time to dig in!
Inside:

  • How to use Java 8's powerful features
  • Writing effective multicore-ready applications
  • Refactoring, testing, and debugging
  • Adopting functional-style programming
  • Quizzes and quick-check questions
This book/course is made for programmers familiar with Java and basic OO programming.

Raoul-Gabriel Urma is a software engineer, speaker, trainer, and PhD candidate at the University of Cambridge. Mario Fusco is an engineer at Red Hat and creator of the lambdaj library. Alan Mycroft is a professor at Cambridge and cofounder of the Raspberry Pi Foundation.

The best guide to Java8 that will ever be written!
William Wheeler, ProData Computer Systems

The new Streams API and lambda examples are especially useful.
Steve Rogers, CGTek, Inc.

A must-have to get functional with Java 8.
Mayur S. Patil, MIT Academy of Engineering

NARRATED BY EZRA SIMELOFF

Table of contents

  1. PART 1: FUNDAMENTALS
    1. Chapter 1. Java 8: why should you care?
    2. Chapter 1. Java’s place in the programming language ecosystem
    3. Chapter 1. Passing code to methods with behavior parameterization
    4. Chapter 1. Functions in Java
    5. Chapter 1. Passing code: an example
    6. Chapter 1. Streams
    7. Chapter 1. Default methods
    8. Chapter 2. Passing code with behavior parameterization
    9. Chapter 2. Behavior parameterization
    10. Chapter 2. Tackling verbosity
    11. Chapter 3. Lambda expressions
    12. Chapter 3. Where and how to use lambdas
    13. Chapter 3. Putting lambdas into practice: the execute around pattern
    14. Chapter 3. Using functional interfaces
    15. Chapter 3. Type checking, type inference, and restrictions
    16. Chapter 3. Method references
    17. Chapter 3. Putting lambdas and method references into practice!
    18. Chapter 3. Similar ideas from mathematics
  2. PART 2: FUNCTIONAL-STYLE DATA PROCESSING
    1. Chapter 4. Introducing streams
    2. Chapter 4. Getting started with streams
    3. Chapter 4. Streams vs. collections
    4. Chapter 4. Stream operations
    5. Chapter 5. Working with streams
    6. Chapter 5. Mapping
    7. Chapter 5. Finding and matching
    8. Chapter 5. Reducing
    9. Chapter 5. Putting it all into practice
    10. Chapter 5. Putting numerical streams into practice: Pythagorean triples
    11. Chapter 5. Building streams
    12. Chapter 5. Streams from functions: creating infinite streams!
    13. Chapter 6. Collecting data with streams
    14. Chapter 6. Reducing and summarizing
    15. Chapter 6. Generalized summarization with reduction
    16. Chapter 6. Grouping
    17. Chapter 6. Collecting data in subgroups
    18. Chapter 6. Partitioning
    19. Chapter 6. The Collector interface
    20. Chapter 6. Developing your own collector for better performance
    21. Chapter 7. Parallel data processing and performance
    22. Chapter 7. Measuring stream performance
    23. Chapter 7. Using parallel streams correctly
    24. Chapter 7. The fork/join framework
    25. Chapter 7. Work stealing
    26. Chapter 7. Spliterator
    27. Chapter 7. Implementing your own Spliterator
  3. PART 3: EFFECTIVE JAVA 8 PROGRAMMING
    1. Chapter 8. Refactoring, testing, and debugging
    2. Chapter 8. From imperative data processing to Streams
    3. Chapter 8. Refactoring object-oriented design patterns with lambdas
    4. Chapter 8. Observer
    5. Chapter 8. Testing lambdas
    6. Chapter 9. Default methods
    7. Chapter 9. API version 2
    8. Chapter 9. Usage patterns for default methods
    9. Chapter 9. Resolution rules
    10. Chapter 10. Using Optional as a better alternative to null
    11. Chapter 10. Problems with null
    12. Chapter 10. Introducing the Optional class
    13. Chapter 10. Chaining Optional objects with flatMap
    14. Chapter 10. Default actions and unwrapping an optional
    15. Chapter 10. Practical examples of using Optional
    16. Chapter 11. CompletableFuture: composable asynchronous programming
    17. Chapter 11. Implementing an asynchronous API
    18. Chapter 11. Make your code non-blocking
    19. Chapter 11. Using a custom Executor
    20. Chapter 11. Pipelining asynchronous tasks
    21. Chapter 11. Combining two CompletableFutures—dependent and independent
    22. Chapter 11. Reacting to a CompletableFuture completion
    23. Chapter 12. New Date and Time API
    24. Chapter 12. Instant: a date and time for machines
    25. Chapter 12. Manipulating, parsing, and formatting dates
    26. Chapter 12. Working with different time zones and calendars
  4. PART 4: BEYOND JAVA
    1. Chapter 13. Thinking functionally
    2. Chapter 13. What’s functional programming?
    3. Chapter 13. Referential transparency
    4. Chapter 13. Recursion vs. iteration
    5. Chapter 14. Functional programming techniques
    6. Chapter 14. Persistent data structures
    7. Chapter 14. Lazy evaluation with streams
    8. Chapter 14. Your own lazy list
    9. Chapter 14. Pattern matching
    10. Chapter 14. Miscellany
    11. Chapter 15. Blending OOP and FP: comparing Java 8 and Scala
    12. Chapter 15. Basic data structures: List, Set, Map, Tuple, Stream, Option
    13. Chapter 15. Functions
    14. Chapter 15. Classes and traits
    15. Chapter 16. Conclusions and where next for Java
    16. Chapter 16. What’s ahead for Java?
    17. Chapter 16. Richer forms of generics
    18. Chapter 16. Value types

Product information

  • Title: Java 8 in Action video edition
  • Author(s): Raoul-Gabriel Urma, Mario Fusco, Alan Mycroft
  • Release date: August 2014
  • Publisher(s): Manning Publications
  • ISBN: None