Шаблон проектування (патерн) утворюється шляхом повторного використання абстрактних знань про проблеми та способи їх вирішення.

Шаблон представляє собою опис проблеми і суть її вирішення. Він повинен бути досить абстрактним, щоб бути повторно використаним в різних умовах. Шаблон часто залежить від характеристик об’єкта таких, як успадкування і поліморфізм.

Елементи шаблону проектування:

– Назва – це ідентифікатор значущого фону.

– Опис проблеми.

– Опис рішення – це не конкретний проект, а шаблон для проектування рішення, яке може бути підтверджене  різними шляхами. Наслідки – це результати і компроміси застосованої моделі.

Шаблон спостерігача

– Назва – це спостерігач.

–  Опис розділяє значення об’єкта від самого об’єкта.

–  Опис проблеми використовується при необхідності відображення багатьох значень стану.

–  Опис рішення (UML).

–  Наслідки – оптимізація для підвищення продуктивності є непрактичною.