Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Pluralsight

Functional C# 10

via Pluralsight

Overview

If you have a feeling that traditional object-oriented design is impeding your progress, then this course will teach you how to apply functional modeling and design, so as to improve development speed and flexibility of the resulting model.

In the recent years, we are witnessing C# language specification incorporating more and more functional syntactical elements in addition to its excellent object-oriented core. But as it goes, those novelties require proper understanding before we can enjoy the benefits they bring to the design. In this course, Functional C#, you’ll learn to design domain types and behavior using functional techniques and novel C# syntax, while still remaining within premises of the C# programming language. First, you’ll explore the core elements that make one design functional, as opposed to (better yet: in addition to!) object-oriented. Next, you’ll discover how each of the functional programming elements and techniques maps to the C# language syntax. Finally, you’ll learn how to build domain models of substantial complexity, while firmly holding to functional programming techniques and methods. When you’re finished with this course, you’ll have the skills and knowledge of functional programming applied to C#, needed to design and implement real-world business applications.

Syllabus

  • Course Overview 1min
  • Putting C# Into Functional Perspective 25mins
  • Introducing Functional Types and Functions 27mins
  • Modeling the Domain with Types 31mins
  • Designing Pure Functions 31mins
  • Using Partially Applied Functions in Modeling 33mins
  • Substituting Inheritance with Discriminated Unions 29mins
  • Modeling Missing Objects 33mins
  • Modeling Complex Domain Objects 35mins

Taught by

Zoran Horvat

Reviews

4.8 rating at Pluralsight based on 73 ratings

Start your review of Functional C# 10

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.