Шаблон проектирования

Шаблон проектирования представляет собой образец или пример правильного решения какой-либо распространенной задачи при разработке ПО.

Преимуществом использования шаблона проектирования является снижение сложности рабочего процесса, поскольку сокращается время написания кода. У всех шаблонов уже есть заранее прописанные названия, что также облегчает взаимодействие между разработчиками.

Среди минусов можно отметить то, что у разработчиков появляется соблазн применять выбранный шаблон, даже когда не всего его функции нужны для реализуемого продукта.

Существуют основные типы шаблонов проектирования:

  • Шаблон делегирования (Delegation pattern) передает ответственность за выполнение своего поведения связанному объекту.
  • Шаблон функционального дизайна (Functional design) обеспечивает для каждого модуля конкретную функцию, которая исполняется с минимальным побочным эффектом для других модулей.
  • Неизменяемый интерфейс (Immutable interface) создает неизменяемый объект.
  • Интерфейс (Interface) обеспечивает структурирование программ для более простого их понимания.
  • Интерфейс-маркер (Marker interface) применяется для отметки наличие или отсутствие реализации атрибута или аннотации.
  • Контейнер свойств (Property container) добавляет дополнительные свойства во внутренний контейнер класса вместо того просто расширить класс новыми свойствами.
  • Канал событий (Event channel) создает канал, по которому идут сообщения в шаблоне издатель - подписчик. Для этой цели в данном шаблоне есть объект-представитель, который не является ни издателем, ни подписчиком, а только обеспечивает их связь.

Смотрите также

  • шаблон антипаттерн,
    который определяет неправильное решение задачи
  • набор концепций Парадигма программирования,
    который определяет подход к программированию
  • техника planning-poker,
    которая предназначена для оценки объема и сложности задач
  • диаграмма сгорания задач,
    которая применяется для графическое представление объема работы