- Thoroughly revised edition of Manning’s bestselling Java 8 in Action
- New features in Java 8, Java 9, and beyond
- Streaming data and reactive programming
- The Java Module System
About the Reader
Written for developers familiar with core Java features.
About the Author
Raoul-Gabriel Urma is CEO of Cambridge Spark. Mario Fusco is a senior software engineer at Red Hat. Alan Mycroft is a University of Cambridge computer science professor; he cofounded the Raspberry Pi Foundation.
Table of Contents
PART 1 – FUNDAMENTALS
-
- Java 8, 9, 10, and 11: what’s happening?
- Passing code with behavior parameterization
- Lambda expressions
-
PART 2 – FUNCTIONAL-STYLE DATA PROCESSING WITH STREAMS
- Introducing streams
- Working with streams
- Collecting data with streams
- Parallel data processing and performance
-
PART 3 – EFFECTIVE PROGRAMMING WITH STREAMS AND LAMBDAS
- Collection API enhancements
- Refactoring, testing, and debugging
- Domain-specific languages using lambdas
-
PART 4 – EVERYDAY JAVA
- Using Optional as a better alternative to null
- New Date and Time API
- Default methods
- The Java Module System
-
PART 5 – ENHANCED JAVA CONCURRENCY
- Concepts behind CompletableFuture and reactive programming
- CompletableFuture: composable asynchronous programming
- Reactive programming
-
PART 6 – FUNCTIONAL PROGRAMMING AND FUTURE JAVA EVOLUTION
- Thinking functionally
- Functional programming techniques
- Blending OOP and FP: Comparing Java and Scala
- Conclusions and where next for Java