O'Reilly logo
live online training icon Live Online training

Essential C# Design Patterns

Develop Reusable Code with Creational, Structural, and Behavioral

Keith Welch

In this course, you'll learn about the most useful of the 23 Design Patterns presented in the classic text "Design Patterns: Elements of Reusable Object-Oriented Software" by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides, otherwise known as the gang of four. Use of these design patterns helps you create reusable, maintainable code. Each pattern will be discussed in depth, and C# samples presented.

You will start by learning about creational patterns, including abstract factory, and factory patterns. From there, Keith will teach you about structural patterns, such as adapter, façade and proxy patterns. This course also covers behavioral patterns, such as observer, command and strategy patterns. Once you have completed this course, you will be fully capable of using these design patterns to create your own C# code.

What you'll learn-and how you can apply it

Participants will understand:
- The concepts behind design patterns, and the specific patterns presented.

Participants will be:
- fully capable of using these design patterns to create their own C# code.

This training course is for you because...

The course is targeted at C# developers who want to have a deeper understanding of application architecture, and want to write more maintainable, reusable code.

Prerequisites

  • Familiarity with C# as well as basic object oriented programming principles.

Materials or Downloads Needed in Advance
- Working files are included, allowing you to follow along with the author throughout the lessons.

Recommended Preparation:
- "Design Patterns: Elements of Reusable Object-Oriented Software" by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides

About your instructor

  • Keith Welch has been in engineering for over 30 years, and in software development for over 20. Besides being old, he has worked in .Net since the first beta, and in mobile for over 10 years. He is the founder of Mooseworks Software (http://mooseworkssoftware.com/), a custom software development and developer tools company. He is based in New Hampshire and Turks and Caicos, and blogs on http://developerisland.com/.

Schedule

The timeframes are only estimates and may vary according to how the class is progressing

  • Lecture: Introduction (20 minutes)
  • Lecture: Creational Patterns - Abstract Factory and Factory patterns (20 minutes)
  • Break (12 minutes)

  • Lecture: Structural Patterns – Adapter and Facade patterns (20 minutes)

  • Lecture: Proxy Structural Pattern and Observer Behavioral Pattern (20 minutes)
  • Break (12 minutes)

  • Lecture: Behavioral Patterns – Iterator and Command patterns (20 minutes)

  • Lecture: Behavioral Patterns - State and Strategy patterns (20 minutes)

  • Q&A (30 minutes)

  • Wrap-up (5 minutes)