Подтвердить что ты не робот

Существует ли окончательный список шаблонов проектирования?

Откуда возникла идея шаблонов дизайна, кто решил, что такое и не является образцом, и дал им их имена? Существует ли официальная организация, которая их определяет, или существуют ли они с помощью какого-либо сообщества?

4b9b3361

Ответ 1

Я думаю, что существует базовый "жизненный цикл шаблона проектирования"

  • Автор пишет о шаблоне проектирования в книге.
  • Книга становится хорошо прочитанной, возможно, бестселлером.
  • Образец дизайна входит в общественное сознание, получает разум.
  • Используется шаблон проектирования. Это работает хорошо. шаблон дизайна получает больше ума.
  • Шаблон дизайна становится панацеей, становится чрезмерно используемым.
  • Другой автор пишет: "Дизайн шаблона считается вредным"
  • Шаблон проектирования становится Анти-шаблон
  • Другой автор становится известным, пишет книгу, полную новых шаблонов дизайна...

Ответ 2

Большинство людей будут указывать на "Банда четырех" (Эрих Гамма, Ричард Хелм, Ральф Джонсон и Джон Влиссидес), которые написали book Design Patterns: Элементы многоразового объектно-ориентированного программного обеспечения. Нет реального окончательного списка, поскольку полезные шаблоны дизайна, безусловно, все время открываются.

Ответ 3

В Википедии есть хороший список. http://en.wikipedia.org/wiki/Design_pattern_(computer_science)

Большинство из них по соглашению сообщества (это сообщество людей, которые прочитали шаблоны дизайна или код:/)

Ответ 4

Короткий ответ: Нет.

Длинный ответ: поскольку, если кто-то что-то проектирует, и он, как правило, повторно используется другими, новый "шаблон дизайна" будет только что создан (или обнаружен?)

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

Я бы добавил предыдущие ссылки эти два:

http://martinfowler.com/eaaCatalog/

http://c2.com/ppr/

Ответ 5

Нет окончательного списка. Шаблоны обнаружены, а не изобретены, поэтому нет организации, которая может сказать "это образец" и "это не шаблон". Даже если бы он был один, это никому не было бы полезно.

Несмотря на это, "знаменитые" шаблоны - это те, которые описаны в Design Patterns или в книге GOF.

Ответ 8

Идея шаблонов дизайна была придумана Кристофером Александром, написав об архитектурных узорах в зданиях и городах. Аналогичным образом, модели появились, когда инженеры приобрели больше опыта в области объектно-ориентированных методологий проектирования.

Существует не один официальный консорциум, который определяет, что такое шаблон и что не является образцом. Однако шаблоны обычно имеют длительный жизненный цикл, прежде чем они будут общеприняты. Сообщество разработчиков начинает участвовать в таких вещах, как PLOP (Pattern Languages ​​of Programs) и их ежегодной конференции: Конференция 2008 года, которая сосредоточьтесь на авторах рисунков и энтузиастах, чтобы обсудить тему моделей и разработки новых шаблонов.

Ответ 9

Нет окончательного списка - для того, чтобы один из них, скорее всего, потребовал бы определенных полномочий, чтобы объявить, является ли шаблон шаблоном или просто... чем-то другим.

Некоторые шаблоны имеют смысл только в подмножестве языков - каноническая книга GOF концентрируется на Java (или это С++?) Книга о мой стол в офисе), и некоторые из описанных шаблонов не очень актуальны, например, в Ruby или VB6. И наоборот, конечно.

Ответ 10

Я бы сказал, что Союз списка в книге "Банда четырех" и "Фаулерские шаблоны архитектуры предприятия" даст вам 99% того, что вам когда-либо понадобилось бы знать.

Ответ 11

Существует каноническая книга: Gamma, Helm, Johnson, Vlissides: "Dessign Patterns - Элементы многоразового объектно-ориентированного программного обеспечения", которые начали все это. Он содержит 23 рисунка.

Ответ 12

Не может быть окончательного списка. Когда-нибудь.

Если вы видите некоторые решения проблемы, которые - для вас - имеют шаблон, который можно сформулировать, вы обнаружили шаблон дизайна. Вы всегда можете продолжить это.

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

Человеческий мозг может найти закономерности почти во всем. Это то, что мы делаем, не думая об этом.