Course Information
Course Overview
Take your code to the next level with Functional Programming in C#. Improve your software’s architecture. C# 9.0.
Take your code to the next level of maintainability, efficiency/concurrency, and ease-of-understanding. Learn the principles of functional programming, how and where to apply it in C#, and why it will make you a better programmer. Improve your software’s architecture and leapfrog your code quality over that of your peers.
What You’ll Learn
Why functional programming is useful
How to apply functional principles and patterns in C#
Design and Implement Immutable Types and Maybes/Options (Null values)
Writing Pure Functions (functions without side effects)
Using recursion with functional programming paradigms to simplify your code
Using LINQ to clean up code and condense logic
Handle errors in functional style
Utilizing extension methods to write fluent, easy to read code.
Make use of new C# 8 and 9 features in functional style
Course Description
Learn how to apply function paradigms and patterns to codebases in C#. If you want to improve the maintainability, understandability, stability, and terseness of your code; this course will help you do that. This is meant for experienced C# developers that already have a solid, moderately deep understanding of the C# language.
Each video will introduce a concept, and lay out an example of implementing that concept.
If you want to improve your code’s quality, make your application faster and easier to understand, and increase your own productivity, then this course will help you tremendously.
Each video in this series can be watched independently. You can get value out of each video by itself if you already know certain concepts or are looking to learn something specific.
Teaching Style
All videos are short, to-the-point, and avoid fluff.
The course covers the following topics:
Theoretical Foundations of Functional Programming
Core Concepts of Functional Programming
Functional Features in C# (C# 9 included)
Immutability, Extensibility, and Extendibility in C#
Dealing with Errors and Nulls gracefully
Course Keywords:
C# Clean Code
C# Best Practices
Functional Programming in C#
C# Functional Programming
Clean Code in C#
Functional Programming
Code Readability
Stable Code in C#
Course Content
- 10 section(s)
- 22 lecture(s)
- Section 1 Course Overview
- Section 2 Pure/Higher Order/First Class Functions
- Section 3 Immutability's Importance in Functional Programming
- Section 4 Lambda Expressions
- Section 5 Composition and Currying
- Section 6 Recursion
- Section 7 Method Chaining
- Section 8 Null Handling
- Section 9 Error Handling
- Section 10 Yield Return
What You’ll Learn
- Why functional programming is useful
- Improve your code's quality, readability, and stability
- Design and Implement Immutable Types and Maybes/Options for Nulls
- Impress your peers with high quality code
- Improve your code's quality, readability, and stability
- Improve your own reasoning of software architecture
Skills covered in this course
Reviews
-
VVidya Bhushan
The chaining topic could have had more content. FluentAssersions repo has very good design for Fluent API. Other topics are very good to start with for one who is new to FP.
-
NNilton Nascimento
It would be nice if the author reviewed the lesson about currying and created an applicable example, but the course is very good.
-
PPascal Fortin
This course is excellent for those who have experience in imperative OOP programming and are looking for a way to simplify their programs. The theory is well explained and the examples are easy to understand. I liked the concept of "code follow along" because executing yourself at the same time helps to understand better.
-
SSharad Patel
Audio levels and quality are not very good in this Udemy course.