or
Sign in to turn on 1-Click ordering.
Trade in Yours
For a 0.25 Gift Card
Trade in
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

 
Tell the Publisher!
Id like to read this book on Kindle

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

Functional Programming in C#: Classic Programming Techniques for Modern Projects (Wrox Programmer to Programmer) [Paperback]

Oliver Sturm
4.0 out of 5 stars  See all reviews (2 customer reviews)
RRP: 22.99
Price: 15.63 & FREE Delivery in the UK. Details
You Save: 7.36 (32%)
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 2 left in stock (more on the way).
Dispatched from and sold by Amazon. Gift-wrap available.
Want it tomorrow, 3 Sept.? Choose Express delivery at checkout. Details
Trade In this Item for up to 0.25
Trade in Functional Programming in C#: Classic Programming Techniques for Modern Projects (Wrox Programmer to Programmer) for an Amazon Gift Card of up to 0.25, which you can then spend on millions of items across the site. Trade-in values may vary (terms apply). Learn more

Book Description

27 May 2011 0470744588 978-0470744581 1
Take advantage of the growing trend in functional programming. C# is the number–one language used by .NET developers and one of the most popular programming languages in the world. It has many built–in functional programming features, but most are complex and little understood. With the shift to functional programming increasing at a rapid pace, you need to know how to leverage your existing skills to take advantage of this trend. Functional Programming in C# leads you along a path that begins with the historic value of functional ideas. Inside, C# MVP and functional programming expert Oliver Sturm explains the details of relevant language features in C# and describes theory and practice of using functional techniques in C#, including currying, partial application, composition, memoization, and monads. Next, he provides practical and versatile examples, which combine approaches to solve problems in several different areas, including complex scenarios like concurrency and high–performance calculation frameworks as well as simpler use cases like Web Services and business logic implementation. Shows how C# developers can leverage their existing skills to take advantage of functional programming Uses very little math theory and instead focuses on providing solutions to real development problems with functional programming methods, unlike traditional functional programming titles Includes examples ranging from simple cases to more complex scenarios Let Functional Programming in C# show you how to get in front of the shift toward functional programming.

Frequently Bought Together

Functional Programming in C#: Classic Programming Techniques for Modern Projects (Wrox Programmer to Programmer) + LINQ Pocket Reference (Pocket Reference (O'Reilly))
Buy the selected items together


Product details

  • Paperback: 288 pages
  • Publisher: John Wiley & Sons; 1 edition (27 May 2011)
  • Language: English
  • ISBN-10: 0470744588
  • ISBN-13: 978-0470744581
  • Product Dimensions: 23 x 19 x 1 cm
  • Average Customer Review: 4.0 out of 5 stars  See all reviews (2 customer reviews)
  • Amazon Bestsellers Rank: 870,275 in Books (See Top 100 in Books)
  • See Complete Table of Contents

More About the Author

Discover books, learn about writers, and more.

Product Description

From the Back Cover

A comprehensive guide to functional programming in C#! Functional Programming in C# provides a unique and fresh approach to programming in C#. The book focuses on providing solutions to real development problems with functional programming methods. Inside, C# expert and MVP Oliver Sturm explains the details of relevant language features in C# and describes the theory and practice of using functional techniques in C#. Sturm provides practical and versatile examples, which combine approaches to solve problems in several different areas, including complex scenarios like concurrency and high–performance calculation frameworks as well as simpler use cases like Web Services and business logic implementation. Functional Programming in C# will help programmers find a solution without leaving their programming language and show them the benefits and limitations of C# programming with the primary aim of helping programmers make the most out of what they already know. Functional Programming in C#: Demonstrates how to use currying to convert multi–parameter functions into function chains Walks you through using the function construction techniques of partial application and composition to create specialized functions out of general–purpose curried function chains Provides coverage of memoization and its use for caching of previously retrieved or calculated return values Details the use of monads in functional programming and shows you their relevance to C# programming as well as practical implementations and their limits wrox.com Programmer Forums Join our Programmer to Programmer forums to ask and answer programming questions about this book, join discussions on the hottest topics in the industry, and connect with fellow programmers from around the world. Code Downloads Take advantage of free code samples from this book, as well as code samples from hundreds of other books, all ready to use. Read More Find articles, ebooks, sample chapters, and tables of contents for hundreds of books, and more reference resources on programming topics that matter to you. Wrox guides are crafted to make learning programming languages and technologies easier than you think. Written by programmers for programmers, they provide a structured, tutorial format that will guide you through all the techniques involved.

About the Author

Oliver Sturm has over 20 years experience developing professional software. He is a well–known expert in various areas of application architecture, programming languages and the third–party .NET tools made by DevExpress. His main focus since 2002 has been on the .NET platform.

Inside This Book (Learn More)
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index | Back Cover
Search inside this book:

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

What Other Items Do Customers Buy After Viewing This Item?


Customer Reviews

5 star
0
3 star
0
2 star
0
1 star
0
4.0 out of 5 stars
4.0 out of 5 stars
Most Helpful Customer Reviews
1 of 1 people found the following review helpful
4.0 out of 5 stars Nice intro to FP from a C# perspective 27 July 2011
By Nuno
Format:Paperback
The book provides clear explanations regarding some of the interesting aspects of Functional Programming and backs the ideas with code in C#. It also motivates the use of the functional paradigm on current multi-core systems. The examples provided in the book show the elegance of the paradigm in solving most common problems; and how to easily paralelize the processing. Nonetheless, it also becomes clear that the elegance attained is still far from what idiomatic functional languages (e.g., Haskell or Scheme) allow, in some rare cases the code is very verbose and I would not use it. As the author states, its all about compromise and choosing the right tools for the right problem. Even though C# is not idiomatically functional it allows you to easily apply the concepts when they are relevant to solving the current problem (assuming that the resulting code is not too verbose).
Comment | 
Was this review helpful to you?
4.0 out of 5 stars An introduction, but not an in-depth analysis 5 Nov 2011
By E. L. Wisty TOP 500 REVIEWER VINE VOICE
Format:Paperback|Verified Purchase
This book provides a reasonable introduction to functional programming ideas and why they are increasingly important, but it's perhaps not really sufficiently in-depth to make a major impact on how C# developers approach problems in my opinion.

Some of the book is spent introducing C#2.0 - 4.0 developments for those not already familiar with them, and many of the examples given make use of the author's library written using his own LINQ-like methods presumably created before the release of LINQ, which have not been updated accordingly to use the framework despite the discussion of LINQ.

Many functional programming concepts are discussed, such as immutability, lazy evaluation, Currying, memoisation, parallelisation and so on, but some of these ideas presented are difficult to use, being clumsy and complex, if not even impossible, with C#. It's a good start, but feels like not quite enough to be genuinely useful.

A deeper and perhaps more importantly relevant book is Real World Functional Programming: With Examples in F# and C#. By taking the reader through functional programming concepts using a functional language in the form of F# and considering C# application alongside, a much better appreciation of the ideas and their application should be gained.
Comment | 
Was this review helpful to you?
Most Helpful Customer Reviews on Amazon.com (beta)
Amazon.com: 3.5 out of 5 stars  6 reviews
6 of 6 people found the following review helpful
4.0 out of 5 stars Discover ways to escape the OOP jungle 11 Oct 2011
By Trisha Davis - Published on Amazon.com
Format:Paperback
I picked up "Functional Programming in C#" because I was interested in exploring methods for writing cleaner, more efficient code and possible insights into techniques that I could use to solve problems in my daily work. I expected the book to be technically heavy and I was right. This book is not for beginners.

In general, the book tries to teach functional concepts but a side effect is the reader gets an exceptional look at the C# language, its features and how it works. For example, the "Code as Data" chapter covers expression trees and their structures. The first few chapters also give nice coverage to .NET features such as covarience and contravarience with generics. At first glance I thought it was redundant, but I soon realized that it's required knowledge in order to take advantage of the proposed techniques.

There are a few chapters on functional techniques to solve common issues like caching and logging that I would disagree with implementing in a C# application in favor of OOP powered by an AOP framework. However, despite that fact, the insight gained from studying the functional techniques is well worth the read. I recommend this book for anyone looking for a fresh approach to solving problems in their code.
4 of 4 people found the following review helpful
4.0 out of 5 stars Very good , could have been better 19 Oct 2011
By Cyril - Published on Amazon.com
Format:Paperback|Verified Purchase
The author has done a tremendous job is picking out the key areas where functional programming suits well in C# programming, I liked the chapters on generics, iterators, closures. could have been better with a more organised flow and more practical examples, but reading this along with "C# in Depth" by Jon Skeet makes you a better programmer.
6 of 7 people found the following review helpful
3.0 out of 5 stars Functional Programming in C# 30 Nov 2011
By Bill Perkins - Published on Amazon.com
Format:Paperback|Verified Purchase
I have played with functional programming in the past - in the form of
Haskell code - not much call for it in the work place so it was
personal curiosity more than anything else. Now I am working in
professional C# /ASP/.Net code and can see where some functional
programming can be handy for NUnit tests... lambda expressions in
particular.

This book is a good introduction but I am finding it is a bit too
brief for me, lots of text explaining what, not so much why, even less
on how. Working through the downloaded examples is a help.
1 of 1 people found the following review helpful
3.0 out of 5 stars Functional Programming in C# 6 Sep 2013
By Mr. Pink - Published on Amazon.com
Format:Paperback
The Good:

After reading this book, I have a few more tools in the box -- Things that I hadn't thought about much, such as really taking advantage of higher-order functions, functional memoization, currying, partial application, and different techniques to optimize recursive functions.
The section on lazy evaluation was very good as well.

The not-so-good:

I often felt like I was reading documentation for FCSLib. I remember having to skim over some sections discussing FCSLib features. Some of the code samples in the later chapters use FCSLib exclusively. I don't know.. maybe I'm being too picky. I just wish there had been less focus on the accompanying library (which I would/could probably never use).

Overall, I thought the book was okay. For me, most of the value was in Part 3 (implementing functional techniques in c#). I'll definitely be reading that section again. I suppose this time I'll dive deeper into the FCSLib code as I read it.
1 of 1 people found the following review helpful
4.0 out of 5 stars Different side to C# 3 Jan 2013
By David Ford - Published on Amazon.com
Format:Kindle Edition|Verified Purchase
This book showed me a different side of C# by getting away from the OO principles and using Functional principles. Since I am more familiar with OO principles and C#, this offered a good introduction to Functional programming. The author tried to teach functional principles using some OO principles that are a part of C#. This helped me understand functional programming quicker.
Were these reviews helpful?   Let us know
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
   


Look for similar items by category


Feedback