Functional Programming in C#: How to Write Better C# Code

Huge savings for students

Each student receives a 50% discount off of most books in the HSG Book Store. During class, please ask the instructor about purchase details.
List Price: $49.99
Price: $25.00
You Save: $25.00
1

Summary

Functional Programming in C# teaches you to apply functional thinking to real-world problems using the C# language. The book, with its many practical examples, is written for proficient C# programmers with no prior FP experience. It will give you an awesome new perspective.

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

About the Technology

Functional programming changes the way you think about code. For C# developers, FP techniques can greatly improve state management, concurrency, event handling, and long-term code maintenance. And C# offers the flexibility that allows you to benefit fully from the application of functional techniques. This book gives you the awesome power of a new perspective.

About the Book

Functional Programming in C# teaches you to apply functional thinking to real-world problems using the C# language. You'll start by learning the principles of functional programming and the language features that allow you to program functionally. As you explore the many practical examples, you'll learn the power of function composition, data flow programming, immutable data structures, and monadic composition with LINQ.

What's Inside

  • Write readable, team-friendly code
  • Master async and data streams
  • Radically improve error handling
  • Event sourcing and other FP patterns

About the Reader

Written for proficient C# programmers with no prior FP experience.

About the Author

Enrico Buonanno studied computer science at Columbia University and has 15 years of experience as a developer, architect, and trainer.

Table of Contents

    PART 1 - CORE CONCEPTS
  1. Introducing functional programming
  2. Why function purity matters
  3. Designing function signatures and types
  4. Patterns in functional programming
  5. Designing programs with function composition
  6. PART 2 - BECOMING FUNCTIONAL
  7. Functional error handling
  8. Structuring an application with functions
  9. Working effectively with multi-argument functions
  10. Thinking about data functionally
  11. Event sourcing: a functional approach to persistence
  12. PART 3 - ADVANCED TECHNIQUES
  13. Lazy computations, continuations, and the beauty of monadic composition
  14. Stateful programs and stateful computations
  15. Working with asynchronous computations
  16. Data streams and the Reactive Extensions
  17. An introduction to message-passing concurrency
Manning Publications