Introducing Functional Programming Using C#: Leveraging a New Perspective for OOP Developers

  • 3h 11m
  • Vaskaran Sarcar
  • Apress
  • 2023

Understand the power of C#, a multi-paradigm language. This book will help you learn, analyze, and harness the functional aspects of C# so you can create a better program.

The book is divided into two parts. Part I starts with an overview of functional programming (FP). It covers the building blocks for FP: functions and immutability. You will learn about the built-in supports for FP, first- and higher-order functions (HOF), functional purity and side effects, different forms of immutability, and much more. Part II includes discussions on functional composition using pipelining and currying. It also explains how to handle temporal coupling and discusses partial functions and useful functional patterns (such as Map, Bind, Filter, and Fold). Author Vaskaran Sarcar takes you through functional exception-handling mechanisms and provides additional tips to make your programs more efficient.

After reading the book, you will understand and be able to implement key aspects of FP. You will be able to produce better code (and refactor existing code) by combining the best techniques from both FP and object-oriented programming (OOP) paradigms.

What You'll Learn

  • Understand how the concepts of functional programming (FP) can be implemented using C#
  • Refactor existing code (following the FP paradigm) to make it more readable, maintainable, and predictive
  • Know how advanced features (such as delegates, lambdas, generics) can be used differently
  • Understand how to efficiently use features such as lambda expressions and type inference as C# includes explicit language extensions to support functional programming

Who This Book Is For

C# developers familiar with object-oriented programming (OOP) who want to harness the power of functional programming (FP)

About the Author

Vaskaran Sarcar obtained his Master of Engineering degree in Software Engineering from Jadavpur University, Kolkata (India), and an MCA from Vidyasagar University, Midnapore (India). He was a National Gate Scholar (2007-2009) and has over 12 years of experience in education and the IT industry. He devoted his early years (2005-2007) to the teaching profession at various engineering colleges, and later he joined HP India PPS R&D Hub in Bangalore. He worked there until August of 2019. At the time of his retirement from HP, he was a Senior Software Engineer and Team Lead at HP. Vaskaran is following his dream and passion and is now a full-time author. You can see all of his books on Amazon's website.

In this Book

  • Introduction
  • Functional Programming overview
  • Understanding Functions
  • Understanding Immutability
  • Composing Functions using Pipelining
  • Composing Functions using Currying
  • Handling Temporal Coupling
  • Functional Patterns
  • Exception Handling
  • Miscellaneous Topics