Functional Programming for Java Developers and over 1.5 million other books are available for Amazon Kindle . Learn more


or
Sign in to turn on 1-Click ordering.
More Buying Choices
Have one to sell? Sell yours here
Sorry, this item is not available in
Image not available for
Colour:
Image not available

 
Start reading Functional Programming for Java Developers on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Functional Programming for Java Developers: Tools for Better Concurrency, Abstraction, and Agility [Paperback]

Dean Wampler
2.8 out of 5 stars  See all reviews (4 customer reviews)
Price: £17.50 & this item Delivered FREE in the UK with Super Saver Delivery. See details and conditions
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Only 1 left in stock (more on the way).
Dispatched from and sold by Amazon. Gift-wrap available.
Want delivery by Friday, 24 May? Choose Express delivery at checkout. See Details

Formats

Amazon Price New from Used from
Kindle Edition £11.24  
Paperback £17.50  
Amazon.co.uk Trade-In Store
Did you know you can trade in your old books for an Amazon.co.uk Gift Card to spend on the things you want? Visit the Books Trade-In Store for more details. Learn more.

Book Description

2 Aug 2011 1449311032 978-1449311032 1

Software development today is embracing functional programming (FP), whether it's for writing concurrent programs or for managing Big Data. Where does that leave Java developers? This concise book offers a pragmatic, approachable introduction to FP for Java developers or anyone who uses an object-oriented language.

Dean Wampler, Java expert and author of Programming Scala (O'Reilly), shows you how to apply FP principles such as immutability, avoidance of side-effects, and higher-order functions to your Java code. Each chapter provides exercises to help you practice what you've learned. Once you grasp the benefits of functional programming, you’ll discover that it improves all of the code you write.

  • Learn basic FP principles and apply them to object-oriented programming
  • Discover how FP is more concise and modular than OOP
  • Get useful FP lessons for your Java type design—such as avoiding nulls
  • Design data structures and algorithms using functional programming principles
  • Write concurrent programs using the Actor model and software transactional memory
  • Use functional libraries and frameworks for Java—and learn where to go next to deepen your functional programming skills


Product details

  • Paperback: 90 pages
  • Publisher: O'Reilly Media; 1 edition (2 Aug 2011)
  • Language: English
  • ISBN-10: 1449311032
  • ISBN-13: 978-1449311032
  • Product Dimensions: 17.8 x 0.4 x 23.3 cm
  • Average Customer Review: 2.8 out of 5 stars  See all reviews (4 customer reviews)
  • Amazon Bestsellers Rank: 696,083 in Books (See Top 100 in Books)
  • See Complete Table of Contents

More About the Authors

Discover books, learn about writers, and more.

Product Description

Book Description

Tools for Better Concurrency, Abstraction, and Agility

About the Author

Dean Wampler is a Principal Consultant at Think Big Analytics, where he specializes in "Big Data" problems and tools like Hadoop and Machine Learning. Besides Big Data, he specializes in Scala, the JVM ecosystem, JavaScript, Ruby, functional and object-oriented programming, and Agile methods. Dean is a frequent speaker at industry and academic conferences on these topics. He has a Ph.D. in Physics from the University of Washington.


What Other Items Do Customers Buy After Viewing This Item?


Customer Reviews

2.8 out of 5 stars
2.8 out of 5 stars
Most Helpful Customer Reviews
1 of 1 people found the following review helpful
2.0 out of 5 stars Guess I have to learn Scala after all... 21 Jan 2012
Format:Paperback
When I saw this book on Amazon I thought I had a chance to learn why people get so excited about functional programming, before deciding whether to learn a real functional language. Unfortunately, it really is too superficial to add much to what I already knew from a brief time browsing Wikipedia and a few other online articles.

As the author admits in the preface, some topics are not discussed because they are difficult to represent in Java, so the book covers only a few of the important aspects of functional programming. Some of these, such as the emphasis on immutable objects, are useful even in Java, but are already well known from books like "Effective Java". Others, such as recursion, are generally useless in Java because it lacks the appropriate optimisations. While I can see, from other sources, why recursion can simplify code, this does not come across in this book.
Comment | 
Was this review helpful to you?
4.0 out of 5 stars A short, but useful read 23 May 2012
By SES
Format:Paperback|Amazon Verified Purchase
If I paid the full new price for this book, with it being so small I'd feel short changed, however:

It can be hard to make head or tail of functional programming coming from an object oriented world. This book makes a good attempt at using Java to describe the concepts of functional programming, and ultimately tries to get you to think in a more declarative and 'functional' manner when approaching programming problems. Therefore there is a lot of talk about concepts like concurrency and abstraction, with relatively small code snippets which I think is why it has got some negative reviews. But it is concise and I think reads pretty well. Contrary to what you might think you can use a lot of functional concepts in Java with the libraries presented in this book, without the need to take up another specifically functional language.

But it certainly isn't a book about a particular technology which you can learn and say 'now I know functional programming'. It is a good intro though.
Comment | 
Was this review helpful to you?
2 of 3 people found the following review helpful
1.0 out of 5 stars Wrong choices, sketchy definitions, poor read 30 Sep 2011
Format:Paperback
A classical objection Java programmers (and programmers of other languages) have against functional programming is the abundance of recursion. In Java it makes perfect sense to try and avoid it as much as possible. The title of the book suggests that it will teach you to bridge the conceptual gap and help you translate common recursion patterns to structures better suited for Java, i.e. loops / iterators / etc. This is just an example of a wrong choice (he actually uses recursion in almost all his Java code, even though he comments it doesn't optimise).

Definitions of central concepts (lists, category theory, monads, concurrency) are sketchy at best. Some are downright incorrect (lazy evaluation; his definition is that of non-strictness). Oftentimes I couldn't help but be under the impression that the author is convinced it's more important to sound intelligent than it is to be to-the-point. This would normally only be considered a stylistic problem, but in this case it leads to confusion, ambiguity and incorrectness.

Java programmers that want to know what all the fuss is about would do better getting a simple introduction text (e.g. Graham Hutton's Programming in Haskell), working through that in a few days (at most) and applying the concepts in a world they know all too well.
Comment | 
Was this review helpful to you?
Would you like to see more reviews about this item?
Were these reviews helpful?   Let us know
Most Recent Customer Reviews
Search Customer Reviews
Only search this product's reviews

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 

Search Customer Discussions
Search all Amazon discussions
   


Listmania!


Look for similar items by category


Feedback


Amazon.co.uk Privacy Statement Amazon.co.uk Delivery Information Amazon.co.uk Returns & Exchanges