Design Patterns in C#
Course objectives
After completing this course you will be able to:
- improve the design of your object-oriented code
- apply the principles of Clean Code to your project
- recognize the context in which the appropriate design pattern can be implemented
- implement the appropriate pattern
- refactor the legacy code to patterns (Refactoring to SOLID)
Course syllabus
Introduction to design patterns - principles of good object-oriented design
- S.O.L.I.D. OOP
- SRP - Single Responsibility Principle
- OCP - Open/Close Principle
- LSP - Liskov Substitution Principle
- ISP - Interface Segregation Principle
- DSP - Dependency Inversion Principle
- Inversion of Control and Dependency Injection
- Overview of IoC containers
Creational design patterns
- Singleton
- Factory Method
- Abstract Factory
- Builder
- Prototype
- Object Pool
Structural design patterns
- Composite
- Decorator
- Façade
- Proxy
- Bridge
Behavioral design patterns
- Template Method
- Strategy
- State
- Chain of Responsibility
- Command
- Iterator
- Mediator
- Observer
- Visitor
Other design patterns
- Repository
- Null Object
Prerequisites
Basic knowledge of C# programming language.