Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Software Architecture: Functional Programming in C#
Introduction to Functional Programming
Download Source Code
01-Outline (1:18)
02-Programming Paradigms (5:00)
03-Defining Functional Programming (3:29)
04-Functions Are Everywhere (2:42)
05-Why Functional Programming (2:30)
06-Conclusion (1:32)
Core Concepts of Functional Programming
01-Outline (2:09)
02-Immutability (6:59)
03-Temporal Coupling and Immutability (5:26)
04-Side Effects (8:37)
05-Side Effects and Architecture (3:00)
06-CQS (1:45)
07-Declarative Programming Style (5:34)
08-Expressions Over Statements (6:54)
09-Conclusion (2:04)
Functional Features
01-Outline (1:50)
02-Extension Methods (7:26)
03-Autoproperties and Immutability (4:17)
04-Expression-Bodied Members (4:52)
05-Pattern Matching (2:49)
06-Tuples Deconstruction (6:40)
07-LocalFunctions (6:01)
08-Conclusion (1:42)
Immutability in C#
01-Outline (2:12)
02-Mutable Type (6:44)
03-External Immutability (2:55)
04-Internal Immutability (4:41)
05-Shallow and Popsicle Immutability (6:54)
06-Builder Design Pattern (9:13)
07-Evil Mutable Structures (8:26)
08-Immutability and Memory Pressure (7:06)
09-Conclusion (1:42)
Extendibility in C#
01-Outline (1:36)
02-Pipelining (1:39)
03-Extending IDisposable (9:16)
04-General Extensions (10:23)
05-Extending StringBuilder (10:42)
06-Abusing Extenstion Methods (7:37)
07-Conclusion (1:46)
Dealing with Errors
01-Outline (1:11)
02-What Does an 'Error' Mean (3:31)
03-Problems with Exceptions (6:50)
04-Common Misconceptions (3:47)
05-Exception Handling Strategies (5:00)
06-CQS Principle (1:13)
07-Tester-Doer (1:47)
08-Errors and Functional Programming (2:58)
09-Pipelining by Method Chaining (3:15)
10-Conclusion on Exceptions Handling (0:51)
11-BCL Exception Types (1:58)
12-Custom Exception Types (1:14)
13-Conclusion (1:14)
Dealing with Nulls
01-Outline (1:54)
02-Problems with Nulls (2:34)
03-Null Object Pattern (2:51)
04-Maybe Monad in C# (3:47)
05-Automating Null Checks (5:24)
06-Static Analysis (2:50)
07-Returning IEnumerables (1:46)
08-Conclusion (1:24)
07-Conclusion
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock