Real world examples and practical techniques for functional programming in C# without the jargon and theory.
In Functional Programming in C#, Second Edition you will learn how to:
Use higher-order functions to reduce duplication and do more with less code
Use pure functions to write code that is easy to test and optimize
Write pleasant APIs that accurately describe your program's behavior
Use dedicated types to handle nullability, system errors, and validation rules predictably and elegantly
Write composable code without the overhead of an IoC container
Functional Programming in C# has helped thousands of developers apply functional thinking to C# code. Its practical examples and spot-on treatment of FP concepts makes it the perfect guide for proficient C# programmers. This second edition is fully revised to cover new functional-inspired features in the most recent releases of C#, including tuples, async streams, pattern matching, and records. Each chapter is packed with awesome perspectives and epiphany moments on how functional programming can change the way you code.
Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.
About the technology
Turbocharge your C# code. Good functional techniques will improve concurrency, state management, event handling, and maintainability of your software. This book gives you practical answers to why, how, and where to add functional programing into your C# coding practice.
About the book
Functional Programming in C#, Second Edition teaches functional thinking for real-world problems. It reviews the C# language features that allow you to program functionally and through many practical examples shows the power of function composition, data-driven programming, and immutable data structures. All code examples work with .NET 6 and C# 10.
What's inside
Higher-order functions reduce duplication and do more with less code
Code based on pure functions is easy to test and optimize
Write pleasant APIs that accurately describe your program’s behavior
Write a Web API in a functional style
Monadic composition with LINQ
About the reader
For intermediate C# programmers.
About the author
Enrico Buonanno studied Computer Science at Columbia University and has over 15 years of experience as a developer, architect, and trainer.
Table of Contents
PART 1 GETTING STARTED
1 Introducing functional programming
2 Thinking in functions
3 Why function purity matters
PART 2 CORE TECHNIQUES
4 Designing function signatures and types
5 Modeling the possible absence of data
6 Patterns in functional programming
7 Designing programs with function composition
PART 3 FUNCTIONAL DESIGNS
8 Functional error handling
9 Structuring an application with functions
10 Working effectively with multi-argument functions
11 Representing state and change
12 A short introduction to functional data structures
13 Event sourcing: A functional approach to persistence
PART 4 ADVANCED TECHNIQUES
14 Lazy computations, continuations, and the beauty of monadic composition
15 Stateful programs and stateful computations
16 Working with asynchronous computations
17 Traversable and stacked monads
18 Data streams and the Reactive Extensions
19 An introduction to message-passing concurrency
"synopsis" may belong to another edition of this title.
Enrico Buonanno studied computer science at Columbia University and has over 15 years of experience as a developer, architect, and trainer.
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. You'll explore C#'s functional language features, and how to use them to write code that is concise, elegant, robust, and maintainable. Through a variety of examples inspired by real-world programming tasks, you'll learn the power of function composition, data flow programming, immutable data structures, and monadic composition with LINQ. Soon, you'll have completely changed the way you approach writing code and designing architecture.
"About this title" may belong to another edition of this title.
FREE shipping within U.S.A.
Destination, rates & speedsSeller: Goodwill of Colorado, COLORADO SPRINGS, CO, U.S.A.
Condition: Good. This item is in overall good condition. Covers and dust jackets are intact but may have minor wear including slight curls or bends to corners as well as cosmetic blemishes including stickers. Pages are intact but may have minor highlighting/ writing. Binding is intact; however, spine may have slight wear overall. Digital codes may not be included and have not been tested to be redeemable and/or active. Minor shelf wear overall. Please note that all items are donated goods and are in used condition. Orders shipped Monday through Friday! Your purchase helps put people to work and learn life skills to reach their full potential. Orders shipped Monday through Friday. Your purchase helps put people to work and learn life skills to reach their full potential. Thank you! Seller Inventory # 466TY8001RMW
Quantity: 1 available
Seller: SecondSale, Montgomery, IL, U.S.A.
Condition: Good. Item in good condition. Textbooks may not include supplemental items i.e. CDs, access codes etc. Seller Inventory # 00063858707
Quantity: 1 available
Seller: SecondSale, Montgomery, IL, U.S.A.
Condition: Very Good. Item in good condition. Textbooks may not include supplemental items i.e. CDs, access codes etc. Seller Inventory # 00065185763
Quantity: 1 available
Seller: Jenson Books Inc, Logan, UT, U.S.A.
paperback. Condition: VeryGood. A well-cared-for item that has seen limited use but remains in great condition. The item is complete, unmarked, and undamaged, but may show some limited signs of wear. Item works perfectly. Pages are intact and not marred by notes or highlighting. The spine is undamaged. Seller Inventory # 4BQGBJ013G3G_ns
Quantity: 1 available
Seller: Better World Books, Mishawaka, IN, U.S.A.
Condition: As New. Used book that is in almost brand-new condition. Seller Inventory # 51854554-6
Quantity: 1 available
Seller: Goodwill Books, Hillsboro, OR, U.S.A.
Condition: Good. Signs of wear and consistent use. Seller Inventory # 3IIT5H004X3G_ns
Quantity: 1 available
Seller: INDOO, Avenel, NJ, U.S.A.
Condition: As New. Unread copy in mint condition. Seller Inventory # SS9781617299827
Quantity: Over 20 available
Seller: INDOO, Avenel, NJ, U.S.A.
Condition: New. Brand New. Seller Inventory # 9781617299827
Quantity: Over 20 available
Seller: GreatBookPrices, Columbia, MD, U.S.A.
Condition: New. Seller Inventory # 43786893-n
Quantity: Over 20 available
Seller: PBShop.store US, Wood Dale, IL, U.S.A.
PAP. Condition: New. New Book. Shipped from UK. Established seller since 2000. Seller Inventory # PB-9781617299827
Quantity: 15 available