From the course: Advanced C#: Functional Programming Patterns

What you should know

- [Instructor] This course is not a beginner course. It has meant to be a fast and practical introduction to the functional programming features in C# and .NET. C# is a hybrid language. It has functional programming features. It is not a pure functional language, however. Therefore, the focus on this course is to look at how to leverage these functional features and use functional patterns in your code. To be clear, this is not a functional programming course. I will cover some of the key concepts like immutable state and functional composition, but LinkedIn Learning has dedicated courses that look deeper into the concepts. Now let's talk about what you should know before starting the course. I expect you to know how to work with Visual Studio. If not, check out my multi-part course on this powerful developer IDE. In this course, we'll use Visual Studio 2019 Enterprise edition. It's not a requirement that you have Enterprise edition experience, however. As long as you are comfortable with any of the other editions, you'll be fine. You should be able to perform basic debug steps in Visual Studio. Concepts like break points, stepping through code, and using watch windows are a necessary skill for this course. The source code for this course is written in C#, so familiarity with C# is valuable. I'm using unit tests for some of the examples, so it's helpful to have some knowledge of how unit tests work in Visual Studio. For this course, I'm using the default MSTest framework. All the source code for this course is on GitHub. We use branches for the example files. Check out the numbered branch to see the code for that video. You should know how to use Git and GitHub tools integrated into Visual Studio. You need to clone the GitHub repository and open the solution file in the source folder. Check out the other videos in this chapter to discover the GitHub repository location. One of the most useful books I've read on the topic is "Functional Programming in C#" by Enrico Buonanna. So if you have the skills to continue and you are ready to discover functional programming, you're in the right place. Let's get started.

Contents