English | MP4 | AVC 1280×720 | AAC 48KHz 2ch | 1h 55m | 302 MB
Functional programming offers developers a straightforward way to tackle modern software problems like massive scale, distributed systems, and multiple threaded runtimes. Curious about how to work functional programming patterns into your .NET applications? In this course, Walt Ritscher shows you how. Discover how to leverage the functional programming features in C# to transform your code. Walt covers key topics such as immutability, higher-order functions, and why expressions are better for functional programs. Plus, learn how to compose function flow in C# using pipelining; work with functional programming concepts like map, filter and bind in LINQ; and more.
Table of Contents
Introduction
1 Functional programming patterns
2 What you should know
3 Working with GitHub
Overview
4 Overview of the functional programming concepts
Favor Pure Functions
5 Write pure functions for better code
6 Example of an impure function
7 Refactor impure function to pure
8 Reduce code side effects
9 Don’t mutate input arguments
10 Use an immutable argument
Immutable Types
11 Principles of immutable types
12 Read-only properties
13 Instance method in immutable type
14 Use helper methods to create new instance
15 Use factory method to create instance
Side Effects and IO
16 Work with files
17 Calculate the total in pure function
18 Randomness in functional programming
Choose Expressions
19 Why expressions are better for functional programs
20 Rewrite statements as expressions
Functional Functions
21 Use FuncT for first-class functions
22 Higher order functions
Function Composition and Pipelining
23 Composition patterns
24 Compose functions
25 Pipelining with extension methods
26 Pipelining with generic methods
27 Pipelining with IEnumerable
Work with Lists
28 Understand map and other concepts
29 Map with LINQ select
30 Filter with LINQ where
31 Flatten with SelectMany
32 Join with SelectMany
33 Fold with Sum and Aggregate
Conclusion
34 Next steps
Resolve the captcha to access the links!