Functional Programming in Java: How Functional Techniques Improve Your Java Programs(快遞進口)

Pierre-Yves Saumont

  • 出版商: Manning Publications
  • 出版日期: 2017-01-27
  • 定價: USD $49.99
  • 售價: $1,650
  • 貴賓價: 9.5$1,568
  • 語言: 英文
  • 頁數: 472
  • 裝訂: Paperback
  • ISBN: 1617292737
  • ISBN-13: 9781617292736

立即出貨

買這商品的人也買了...

產品描述

Summary

Functional Programming in Java teaches Java developers how to incorporate the most powerful benefits of functional programming into new and existing Java code. You'll learn to think functionally about coding tasks in Java and use FP to make your applications easier to understand, optimize, maintain, and scale.

Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.

About the Technology

Here's a bold statement: learn functional programming and you'll be a better Java developer. Fortunately, you don't have to master every aspect of FP to get a big payoff. If you take in a few core principles, you'll see an immediate boost in the scalability, readability, and maintainability of your code. And did we mention that you'll have fewer bugs? Let's get started!

About the Book

Functional Programming in Java teaches you how to incorporate the powerful benefits of functional programming into new and existing Java code. This book uses easy-to-grasp examples, exercises, and illustrations to teach core FP principles such as referential transparency, immutability, persistence, and laziness. Along the way, you'll discover which of the new functionally inspired features of Java 8 will help you most.

What's Inside

  • Writing code that's easier to read and reason about
  • Safer concurrent and parallel programming
  • Handling errors without exceptions
  • Java 8 features like lambdas, method references, and functional interfaces

About the Reader

Written for Java developers with no previous FP experience.

About the Author

Pierre-Yves Saumont is a seasoned Java developer with three decades of experience designing and building enterprise software. He is an R&D engineer at Alcatel-Lucent Submarine Networks.

Table of Contents

  1. What is functional programming?
  2. Using functions in Java
  3. Making Java more functional
  4. Recursion, corecursion, and memoization
  5. Data handling with lists
  6. Dealing with optional data
  7. Handling errors and exceptions
  8. Advanced list handling
  9. Working with laziness
  10. More data handling with trees
  11. Solving real problems with advanced trees
  12. Handling state mutation in a functional way
  13. Functional input/output
  14. Sharing mutable state with actors
  15. Solving common problems functionally