YoVDO

C# Design Patterns

Offered By: LinkedIn Learning

Tags

Design Patterns Courses C# Courses Unit Testing Courses Object-oriented programming Courses Dependency Injection Courses LINQ Courses Adapter Pattern Courses

Course Description

Overview

Build better code by leveraging design patterns in C#. Learn about the purpose and effective use of design patterns, and discover how to apply Gang of Four patterns in your code.

Syllabus

Introduction
  • Object-oriented design patterns in C#
  • What you should know
  • Review of terms
  • Using the exercise files and installing .NET SDK
1. Defining Software Design Patterns
  • Object-oriented programming
  • What isn't OOP for design patterns
  • C#, OOP, and design patterns
  • What are design patterns?
  • Why do you need design patterns?
  • A short history of design patterns
  • Categories of design patterns
  • Challenge: Design patterns outside of software
  • Solution: Design patterns outside of software
2. Get Started with Design Patterns
  • Using software design patterns
  • Software design pattern drawbacks
  • Overview of the creational patterns for C#
  • Overview of the structural patterns for C#
  • Overview of the behavioral patterns for C#
3. The Iterator Pattern
  • Iterator pattern definition
  • Explicit iterator implementation in C# for generated data
  • Combining iterators in C# with LINQ
  • Challenge: Simultaneous iterators
  • Solution: Simultaneous iterators
4. The Factory Method Pattern
  • Factory Method pattern definition
  • Factory Method pattern to choose the implementation of an action dynamically
  • Factory Method design pattern for unit testing
  • Challenge: Factory Method with dependency injection
  • Solution: Factory Method with dependency injection
5. The Adapter Pattern
  • Adapter pattern definition
  • Adapter in C#: Adapt FileStream to ILogger
  • Adapter pattern for ViewModel mapping
  • Challenge: Class adapter vs. object adapter
  • Solution: Class adapter vs. object adapter
Conclusion
  • Next steps

Taught by

Richard Goforth

Related Courses

Structural Design Patterns in Modern C++
Packt via Coursera
Go Design Patterns
LinkedIn Learning
Java Design Patterns: Structural
LinkedIn Learning
Node.js: Design Patterns
LinkedIn Learning
PHP: Design Patterns
LinkedIn Learning