Design Patterns in C#

21 hours
Advanced C#

Recognize recurring design problems and apply proven solutions to build scalable, maintainable software. This hands-on course provides a comprehensive exploration of creational, structural, and behavioral design patterns, along with key architectural patterns and SOLID principles, so you can design systems that are both elegant and robust.

What You'll Learn

By the end of this course, you will be able to:

  • Identify recurring design problems and select appropriate patterns to solve them
  • Apply creational patterns (Factory Method, Builder, Singleton, and others) to manage object creation
  • Use structural patterns (Adapter, Composite, Decorator, Facade, and others) to organize class relationships
  • Implement behavioral patterns (Observer, Strategy, Command, State, and others) to manage object interactions
  • Apply architectural patterns including MVC, Repository, and Active Record
  • Evaluate coupling, cohesion, and SOLID principles to make informed design decisions
  • Recognize anti-patterns and understand when not to apply a pattern

Requirements

  • Basic understanding of object-oriented programming concepts
  • Experience with at least one programming language such as Java, C#, or Python
  • Familiarity with classes, interfaces, and inheritance

Audience

  • Software Developers and Engineers
  • Application Architects and Technical Leads
  • System Designers and Solution Architects
  • Anyone seeking to apply design patterns to build maintainable software

Topics

Introduction

  • Purpose and Benefits of Design Patterns
  • Pattern Structure and Terminology (Intent, Problem, Solution, Consequences)
  • Classification of Patterns (Creational, Structural, Behavioral)
  • Principles of Object-Oriented Design (SOLID Principles)

Creational

  • Factory Method
  • Builder
  • Abstract Factory
  • Prototype
  • Singleton
  • Object Pool

Structural

  • Bridge
  • Adapter
  • Composite
  • Decorator
  • Flyweight
  • Facade
  • Proxy
  • Private Class Data

Behavioral

  • Chain of Responsibility
  • Command
  • Interpreter
  • Iterator
  • State
  • Memento
  • Mediator
  • Observer
  • Null Object
  • Strategy
  • Template Method
  • Visitor

Architectural

  • Model-View-Controller (MVC)
  • Repository
  • Active Record

Best Practices

  • Coupling and Cohesion
  • Identifying When to Apply a Pattern
  • Pattern Relationships and Anti-Patterns
Training Options
Number of Participants
Training Type

per participant

This course requires a minimum of 4 participants. Contact us for custom pricing for smaller groups.

Course Features

  • Expert instruction
  • Interactive lectures
  • Hands-on labs and exercises
  • Comprehensive course materials
  • Lifetime access to materials

Request Training Quote

Course
Participants
Training Type
Price per Participant

Request Received!

Thank you for your interest!

We'll contact you shortly with a detailed quote for Design Patterns in C#.