Design Patterns Workshop

Design Patterns are a way of communicating and thinking about software design problems. They help developers describe, discuss, and address recurring problems in the software development world.

There are underlying principles in design-patterns thinking that are, essentially, the fundamental rules of good design. Many design patterns are largely just an expression of these rules to a frequently-occurring problem.

This workshop can be run as a 1-3 day workshop with an optional preparatory day focused on the fundamentals of good software design.

The workshop consists of (approximately) a 50/50 mixture of discussion and hands-on work.

Day 0 (Optional)

  • Fundamentals of good design (code qualities).
  • Application of code qualities to class-level design.
  • Application of code qualities to larger designs.

Day 1

  • Design patterns basics.
  • State, Strategy, Template Patterns.
  • Adapter, Facade, and Mediator Patterns.

Day 2

  • Design patterns and testability.
  • Abstract Factory, Factory Method, and Builder Patterns.
  • Chain of Responsibility, Proxy, and Decorator Patterns.

Day 3

  • When the pattern doesn't matter.
  • Object Pool, Singleton, and Null Object Pattern.
  • Visitor, Command, and Interpreter Pattern.

For more information contact max@abiding.software.

Back to training packages.