Simple play icon Course

Design Patterns Overview

by Steve Smith

Design patterns help developers solve problems using proven approaches. They help teams discuss code using higher level concepts and terms. This course introduces you to design patterns and prepares you to start mastering patterns!

What you'll learn

Design patterns help developers and teams solve problems using proven approaches. Patterns also enable teams to discuss design decisions using a richer, more descriptive language.

In this course, Design Patterns Overview, you are introduced to the idea of patterns - how they're discovered, defined, and applied.

  • First, you'll demonstrate a few useful patterns.
  • Next, you'll discover how they can be combined and stacked to produce elegant, useful designs.
  • Finally, you'll explore why you should spend time learning them.
When you complete this course, you'll understand the role design patterns play in modern software development and you'll be ready to start mastering individual patterns that will make you more productive.

Course FAQ

What are design patterns in C# used for?

Design patterns help developers avoid reinventing the wheel. Many of the problems you'll face in your career have been solved before and we can learn to recognize them and address them efficiently.

Who is this course for?

Most senior developers, and certainly every architect, should be familiar with the concept of design patterns and should know at least a few of them well enough to implement them without assistance.

What will I learn in this course?

By the end of this course, you'll understand what design patterns are, how they're discovered and defined, and, most importantly, how and when to apply them in your software.

About the author

Steve Smith (@ardalis) is an entrepreneur and software developer with a passion for building quality software as effectively as possible. He provides mentoring and training workshops for teams with the desire to improve. Steve has been recognized as a Microsoft MVP for over 10 consecutive years, and is a frequent speaker at software developer conferences and events. He is the top contributor to the official documentation on ASP.NET Core and enjoys helpings others write maintainable, testable app... more

Ready to upskill? Get started