Skip to content

Introduction

During the process of designing, implementing or extending some functionality in the application, we always have to think how to structure our code. Instead of coming up with new solutions, it is worth considering whether someone has already solved a similar problem.

Design patterns are blueprints of solutions, that we should use in our applications. This section is based on the patterns described in the book "Design Patterns: Elements of Reusable Object-Oriented Software". This book was written by four authors who are known as Gang of Four.

All design patterns have been divided into three main groups:

  • creational, they describe how to create objects
  • structural, they show how to bind objects together
  • behavioral, they describe how the objects communicate and behave with each other