Introduction#

Overview

Questions:

  • What are Design Patterns?

Objectives:

  • A brief introduction to the types of Design Patterns.

Design patterns are solutions to commonly found problems in software design. They are tested paradigms for how to solve a recurring problem. Patterns allow to speed up software development and provide a uniform communication mechanism among developers.

There are various types of patterns:

  1. Creational: they deal with object or class creation. They help make a system independent of how its objects are created, composed and represented.

  2. Structural: they are about class or object composition. They define ways to compose objects to form larger structures and obtain new functionality.

  3. Behavioral: they are concerned with the assignment of responsibilities between objects and the communicaton between objects or classes.

Key Points

  • Design patterns are solutions to common problems in software design.