C# Design Patterns
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.
Design patterns are an important part of programming. Rather than programming solutions to every issue from scratch, developers can implement these patterns that solve common problems. In this course, instructor Richard Goforth explains the purpose and effective use of key design patterns in C#. Richard begins by discussing why design patterns make sense, what they are, and how they are grouped and categorized. He then provides an overview of the creational, behavioral, and structural Gang of Four design patterns and how they are applied in C# and .NET. Next, he takes a deeper dive into the Iterator, Factory Method, and Adapter patterns, providing hands-on challenges that help you master the application of these patterns in your own code.
Design patterns are an important part of programming. Rather than programming solutions to every issue from scratch, developers can implement these patterns that solve common problems. In this course, instructor Richard Goforth explains the purpose and effective use of key design patterns in C#. Richard begins by discussing why design patterns make sense, what they are, and how they are grouped and categorized. He then provides an overview of the creational, behavioral, and structural Gang of Four design patterns and how they are applied in C# and .NET. Next, he takes a deeper dive into the Iterator, Factory Method, and Adapter patterns, providing hands-on challenges that help you master the application of these patterns in your own code.
Syllabus
Introduction
- Object-oriented design patterns in C#
- What you should know
- Review of terms
- Using the exercise files and installing .NET SDK
- 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
- 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#
- Iterator pattern definition
- Explicit iterator implementation in C# for generated data
- Combining iterators in C# with LINQ
- Challenge: Simultaneous iterators
- Solution: Simultaneous iterators
- 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
- 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
- Next steps
Taught by
Richard Goforth
Related Courses
Reviews
0.0 rating, based on 0 reviews