Functional Programming with F# and C#
3h 5mBeginner2024-03-11
Authors

Microsoft Press
Microsoft

Markus Reynolds
Course details
Functional programming is top of mind these days, with data and ML at the forefront, and it will become more important as more healthcare and fintech companies switch to programming languages like F#, Scala, and Clojure, where state mutation is avoided to prevent data from being corrupted. Learn the principles of functional programming from the ground up, using F# and C#. Markus Reynolds, a senior software engineer and instructor, uses a hands-on approach to teach you functional programming, with demos and practical examples. Learn concepts like recursion, record updating, applicative programming, piping, and currying to enhance your skillset, and practice programming in the functional style. Plus, explore why so many people are using the functional programming paradigm.
Learning objectives
Write F# syntax.
Think functionally.
Avoid state mutation.
Write programs in F#.
Use the F# interpreter.
Explore functional programming concepts.
Learning objectives
Write F# syntax.
Think functionally.
Avoid state mutation.
Write programs in F#.
Use the F# interpreter.
Explore functional programming concepts.
Skills covered
F#C#Programming FoundationsProgramming LanguagesMicrosoftSoftware DevelopmentOne-Off
Concepts
0. Introduction
- 01 - Functional Programming with F# and C#
1. Functional Foundations
- 02 - Learning objectives
- 03 - How does functional differ from OOP
- 04 - How does functional differ from imperative
- 05 - When could we use each any
- 06 - Data and functions
- 07 - Immutability
2. F# Basics
- 08 - Learning objectives
- 09 - How to set up a fsx file
- 10 - Interpreter
- 11 - Using an fsx file with the interpreter
- 12 - How to set up a project
- 13 - Compilation
- 14 - Exception handling
3. Functional Programming
- 15 - Learning objectives
- 16 - Collections
- 17 - Built-in functions
- 18 - Piping
- 19 - Closures
- 20 - Returning functions
4. Advanced Topics
- 21 - Learning objectives
- 22 - Rec keyword
- 23 - Recursion in place of loops
- 24 - Recursive types
- 25 - Currying
- 26 - Partial application
5. Machine Learning With ML.NET
- 27 - Learning objectives
- 28 - Introduction to the library
- 29 - Set up training data
- 30 - Train models
- 31 - Examine results
- 32 - F# code journal
Summary
- 33 - Summary