November 2016

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

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 Responsiblity

  • Hollywood

  • Tell, Don't Ask

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 Responsiblity
Hollywood Tell, Don't Ask
  • Values

  • Simplicity

  • Communication

  • Feedback

  • Courage

  • Respect

Values
Simplicity
Communication
Feedback
Courage
Respect

Downloads

Presentations are available in Microsoft Powerpoint format (pptx).