Log In
Or create an account -> 
Imperial Library
  • Home
  • About
  • News
  • Upload
  • Forum
  • Help
  • Login/SignUp

Index
Java 8 Lambdas Preface
Why Should I Read This Book? Who Should Read This Book? How to Read This Book Conventions Used in This Book Using Code Examples Safari® Books Online How to Contact Us Acknowledgments
1. Introduction
Why Did They Need to Change Java Again? What Is Functional Programming? Example Domain
2. Lambda Expressions
Your First Lambda Expression How to Spot a Lambda in a Haystack Using Values Functional Interfaces Type Inference Key Points Exercises
3. Streams
From External Iteration to Internal Iteration What’s Actually Going On Common Stream Operations
collect(toList()) map filter flatMap max and min A Common Pattern Appears reduce Putting Operations Together
Refactoring Legacy Code Multiple Stream Calls Higher-Order Functions Good Use of Lambda Expressions Key Points Exercises Advanced Exercises
4. Libraries
Using Lambda Expressions in Code Primitives Overload Resolution @FunctionalInterface Binary Interface Compatibility Default Methods
Default Methods and Subclassing
Multiple Inheritance
The Three Rules
Tradeoffs Static Methods on Interfaces Optional Key Points Exercises Open Exercises
5. Advanced Collections and Collectors
Method References Element Ordering Enter the Collector
Into Other Collections To Values Partitioning the Data Grouping the Data Strings Composing Collectors Refactoring and Custom Collectors Reduction as a Collector
Collection Niceties Key Points Exercises
6. Data Parallelism
Parallelism Versus Concurrency Why Is Parallelism Important? Parallel Stream Operations Simulations Caveats Performance Parallel Array Operations Key Points Exercises
7. Testing, Debugging, and Refactoring
Lambda Refactoring Candidates
In, Out, In, Out, Shake It All About The Lonely Override Behavioral Write Everything Twice
Unit Testing Lambda Expressions Using Lambda Expressions in Test Doubles Lazy Evaluation Versus Debugging Logging and Printing The Solution: peek Midstream Breakpoints Key Points
8. Design and Architectural Principles
Lambda-Enabled Design Patterns
Command Pattern Strategy Pattern Observer Pattern Template Method Pattern
Lambda-Enabled Domain-Specific Languages
A DSL in Java How We Got There Evaluation
Lambda-Enabled SOLID Principles
The Single Responsibility Principle The Open/Closed Principle The Dependency Inversion Principle
Further Reading Key Points
9. Lambda-Enabled Concurrency
Why Use Nonblocking I/O? Callbacks Message Passing Architectures The Pyramid of Doom Futures Completable Futures Reactive Programming When and Where Key Points Exercises
10. Moving Forward Index Colophon Copyright
  • ← Prev
  • Back
  • Next →
  • ← Prev
  • Back
  • Next →

Chief Librarian: Las Zenow <zenow@riseup.net>
Fork the source code from gitlab
.

This is a mirror of the Tor onion service:
http://kx5thpx2olielkihfyo4jgjqfb7zx7wxr3sd4xzt26ochei4m6f7tayd.onion