Dev Training: Patterns, Principles + Values

The best teams know how to talk to each other. They seek feedback for themselves and the group. They get on, enjoy working together and share knowledge.

I’m a big believer in collaboration.

It's good to make sure all team members have a similar level of development skills (aside from knowledge of languages or frameworks). I created a series of 10 presentations. Each presentation is for a 1-hour session to discuss the points in the presentation and other development related topics.

A secondary aim but equal benefit is to make conversations about development skills common in the team where they might not have been before.

Content

The content of the presentation is taken from a range of internet sources and covers a lot of Extreme Programming values and principles along with the 23 patterns from the Gang of Four’s book Design Patterns.

  • Design Patterns
    • Factory Method
    • Decorator
    • Mediator
    • Abstract factory
    • Facade
    • Memento
    • Builder
    • Flyweight
    • Observer
    • Prototype
    • Proxy
    • State
    • Singleton
    • Chain of responsibility
    • Strategy
    • Adapter
    • Command
    • Template
    • Bridge
    • Interpreter
    • Visitor
    • Composite
    • Iterator

Principles

  • Boy Scout Rule
  • Explicit Dependencies
  • Encapsulation
  • Persistence Ignorance
  • Separation of Concerns
  • Principle of Least Surprise
  • Inversion of Control
  • Don't Repeat Yourself
  • Dependency Inversion
  • Interface Segregation
  • You Aren't Gonna Need It
  • Liskov Substitution
  • Keep It Simple, Stupid
  • Open-Closed
  • Stable Dependencies
  • Single Responsibility
  • Hollywood
  • Tell, Don't Ask

Values

  • Simplicity
  • Communication
  • Feedback
  • Courage
  • Respect

Downloads

Presentations are available in Microsoft Powerpoint format (pptx).

Session 1

Session 2

Session 3

Session 4

Session 5

Session 6

Session 7

Session 8

Session 9

Session 10