Дизайн-шаблон

Повторно используемая форма решения проблемы дизайна

Шаблон проектирования — это повторно используемая форма решения проблемы проектирования. Идея была предложена архитектором Кристофером Александром [1] и адаптирована для различных других дисциплин, в частности, для разработки программного обеспечения . [2]

Подробности

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

Элементами этого языка являются сущности, называемые шаблонами. Каждый шаблон описывает проблему, которая снова и снова возникает в нашей среде, а затем описывает ядро ​​решения этой проблемы таким образом, что вы можете использовать это решение миллион раз, не делая его дважды одним и тем же способом.

—  Кристофер Александр, Язык шаблонов [1]

Документирование шаблона требует объяснения того, почему конкретная ситуация вызывает проблемы, и как компоненты шаблона соотносятся друг с другом, чтобы дать решение. [3] Кристофер Александер описывает общие проблемы дизайна как возникающие из-за «конфликтующих сил» — например, конфликта между желанием, чтобы комната была солнечной, и желанием, чтобы она не перегревалась в летние дни. Шаблон не скажет дизайнеру, сколько окон сделать в комнате; вместо этого он предложит набор значений, чтобы направить дизайнера к решению, которое лучше всего подходит для их конкретного применения. Александер, например, предлагает включить достаточно окон, чтобы направить свет по всей комнате. Он считает это хорошим решением, поскольку считает, что это увеличивает удовольствие от комнаты для ее жильцов. Другие авторы могут прийти к другим выводам, если они придадут большее значение расходам на отопление или материальным затратам. Эти значения, используемые автором шаблона для определения того, какое решение является «лучшим», также должны быть задокументированы в шаблоне.

Документация шаблона также должна объяснять, когда он применяется. Поскольку два дома могут сильно отличаться друг от друга, шаблон дизайна для домов должен быть достаточно широким, чтобы применяться к ним обоим, но не настолько неопределенным, чтобы не помогать проектировщику принимать решения. Диапазон ситуаций, в которых может использоваться шаблон, называется его контекстом. Вот несколько примеров: «все дома», «все двухэтажные дома» или «все места, где люди проводят время».

Например, в работе Кристофера Александра автобусные остановки и залы ожидания в хирургическом центре находятся в контексте паттерна «МЕСТО ДЛЯ ОЖИДАНИЯ».

Примеры

Бизнес-модели также имеют шаблоны проектирования. [4] См. Бизнес-модель § Примеры .

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

Ссылки

  1. ^ ab Alexander, Christopher (1977). Язык шаблонов: города, здания, строительство . Серия Center for Environmental Structure. Том 2. Нью-Йорк: Oxford University Press . ISBN 0-19-501919-9. OCLC  3132495.
  2. ^ Гамма, Эрих; Хельм, Ричард; Джонсон, Ральф; Влиссидес, Джон (1994). Шаблоны проектирования: элементы повторно используемого объектно-ориентированного программного обеспечения . Серия профессиональных вычислений Addison-Wesley. Рединг, Массачусетс: Addison-Wesley . ISBN 0-201-63361-2. OCLC  31171684.Книга « Банда четырёх ».
  3. ^ Майориелло, Джеймс (2002-10-02). «Что такое шаблоны проектирования и нужны ли они мне?». developer.com . Получено 2011-03-21 .
  4. ^ Например: Меттлер, Тобиас; Эйрих, Маркус (июнь 2012 г.). «Подход на основе „шаблона проектирования“ для анализа бизнес-моделей электронного здравоохранения». Политика и технологии здравоохранения . 1 (2): 77–85. doi :10.1016/j.hlpt.2012.04.005.

Дальнейшее чтение

  • Эрл, Томас (2009). Паттерны проектирования SOA . Серия Prentice Hall по сервисно-ориентированным вычислениям от Томаса Эрла. Аппер Сэддл Ривер, Нью-Джерси: Prentice Hall . ISBN 978-0-13-613516-6. OCLC  156832597.
  • Лейтнер, Хельмут (2015). Теория паттернов: Введение и перспективы на пути Кристофера Александра . Серия исследований паттернов. Том 1. Грац: Хельмут Лейтнер, HLS Software. ISBN 978-1-5056-3743-4. OCLC  913795677.
  • Pree, Wolfgang (1995). Шаблоны проектирования для объектно-ориентированной разработки программного обеспечения . Книги ACM Press. Уокингем, Англия; Рединг, Массачусетс: Addison-Wesley . ISBN 0201422948. OCLC  31291883.
  • Шмидт, Дуглас К.; Бушманн, Фрэнк ; Хенни, Кевлин (2007). Архитектура программного обеспечения, ориентированная на шаблоны: о шаблонах и языках шаблонов . Серия Wiley по шаблонам проектирования программного обеспечения. Том 5. Чичестер, Великобритания; Нью-Йорк: Wiley . ISBN 9780471486480. OCLC  62532759.
  • Тидвелл, Дженифер; Брюэр, Чарльз; Валенсия, Эйнн (2020) [2005]. Проектирование интерфейсов: шаблоны для эффективного проектирования взаимодействия (3-е изд.). Севастополь, Калифорния: O'Reilly . ISBN 9781492051961OCLC  1138701080. Представляет решения распространенных проблем проектирования пользовательского интерфейса в виде набора шаблонов, каждый из которых содержит конкретные примеры, рекомендации и предупреждения .
Взято с "https://en.wikipedia.org/w/index.php?title=Design_pattern&oldid=1255736528"