Что такое шаблон проектирования?
Шаблон проектирования — это часть архитектуры программного обеспечения, которая помогает нам организовать код, который мы пишем, поскольку обеспечивает общее, повторно используемое и применимое решение различных проблем проектирования программного обеспечения.
Например, вы обнаруживаете в своем коде следующую ситуацию: «Вы обнаруживаете много строк, которые создают экземпляр структуры, некоторые из присвоенных значений похожи для некоторых экземпляров». Вот когда на помощь приходит шаблон проектирования, например, мы можем пойти дальше и определить подход к реализации «Заводского шаблона», а затем сохранить все эти похожие/дублированные строки.
Подумайте о другом случае: «вы хотите инициализировать структуру только один раз и предотвратить появление новых экземпляров, связанных с этим типом, и все это для того, чтобы сохранить значение во время выполнения». Итак, он вспоминает шаблон проектирования под названием «Singleton» и принимает решение реализовать его.
Как видно из этих небольших примеров, шаблон проектирования можно описать как шаблон, который помогает выявлять проблемы в программном обеспечении и предлагать подходящее решение для каждого конкретного случая.
Типы шаблонов проектирования
Мы можем обнаружить три типа, которые сгруппированы в соответствии с назначением шаблона: у нас есть творческие шаблоны, структурные шаблоны и шаблоны поведения. В следующем разделе описывается каждая из групп шаблонов.
Шаблоны создания
Эти шаблоны предоставляют механизмы создания объектов, повышающие гибкость и возможность повторного использования существующего кода.
- Фабрика (перейти к статье)
- Строитель (перейти к статье)
- Синглтон (перейти к статье)
Структурные шаблоны
Эти шаблоны объясняют, как собирать объекты и классы в более крупные структуры, сохраняя при этом гибкость и эффективность структуры.
- Адаптер (перейти к статье)
- Мост (перейти к статье)
- Композит (перейти к статье)
- Декоратор (перейти к статье)
- Прокси (перейти к статье)
- Наилегчайший (перейти к статье)
Модели поведения
Эти шаблоны связаны с алгоритмами и распределением обязанностей между функциями.
- Стратегия (перейти к статье)
- Состояние (перейти к статье)
- Итератор (перейти к статье)
- Медиатор (перейти к статье)
- Посетитель (перейти к статье)
Заключительные примечания:
Все представленные примеры и информация призваны помочь вам понять, что такое шаблон и как он реализован. Я искал простые примеры кода и использование метафор, чтобы его было легко понять.
Для меня приятно помочь новым разработчикам понять концепции, которые были трудными для меня, и, делая такие статьи, я хочу помочь другим получить идею или отправную точку для продолжения изучения шаблонов проектирования и еще одна важная вещь. что я хочу отметить, так это то, что вы тоже помогаете мне, потому что каждый раз, когда я пишу новую статью, я освежаю свои знания.
Спасибо за прочтение!