0%

Book Description

Java 8 in Action is a clearly written guide to to the new features of Java 8. The book covers lambdas, streams, and functional-style programming. 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!

Summary

About the Book

Every new version of Java is important, but Java 8 is a game changer. Java 8 in Action is a clearly written guide to the new 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.

This book is written for programmers familiar with Java and basic OO programming.

What’s Inside

  • How to use Java 8’s powerful new features

  • Writing effective multicore-ready applications

  • Refactoring, testing, and debugging

  • Adopting functional-style programming

  • Quizzes and quick-check questions

  • About the Authors

    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.

    Table of Contents

    1. Copyright
    2. Brief Table of Contents
    3. Table of Contents
    4. Preface
    5. Acknowledgments
    6. About this Book
    7. About the Authors
    8. About the Cover Illustration
    9. Part 1. Fundamentals
      1. Chapter 1. Java 8: why should you care?
      2. Chapter 2. Passing code with behavior parameterization
      3. Chapter 3. Lambda expressions
    10. Part 2. Functional-style data processing
      1. Chapter 4. Introducing streams
      2. Chapter 5. Working with streams
      3. Chapter 6. Collecting data with streams
      4. Chapter 7. Parallel data processing and performance
    11. Part 3. Effective Java 8 programming
      1. Chapter 8. Refactoring, testing, and debugging
      2. Chapter 9. Default methods
      3. Chapter 10. Using Optional as a better alternative to null
      4. Chapter 11. CompletableFuture: composable asynchronous programming
      5. Chapter 12. New Date and Time API
    12. Part 4. Beyond Java 8
      1. Chapter 13. Thinking functionally
      2. Chapter 14. Functional programming techniques
      3. Chapter 15. Blending OOP and FP: comparing Java 8 and Scala
      4. Chapter 16. Conclusions and where next for Java
    13. Appendix A. Miscellaneous language updates
    14. Appendix B. Miscellaneous library updates
    15. Appendix C. Performing multiple operations in parallel on a stream
    16. Appendix D. Lambdas and JVM bytecode
    17. Index
    18. List of Figures
    19. List of Tables
    20. List of Listings