Откуда возникла идея шаблонов дизайна, кто решил, что такое и не является образцом, и дал им их имена? Существует ли официальная организация, которая их определяет, или существуют ли они с помощью какого-либо сообщества?
Существует ли окончательный список шаблонов проектирования?
Ответ 1
Я думаю, что существует базовый "жизненный цикл шаблона проектирования"
- Автор пишет о шаблоне проектирования в книге.
- Книга становится хорошо прочитанной, возможно, бестселлером.
- Образец дизайна входит в общественное сознание, получает разум.
- Используется шаблон проектирования. Это работает хорошо. шаблон дизайна получает больше ума.
- Шаблон дизайна становится панацеей, становится чрезмерно используемым.
- Другой автор пишет: "Дизайн шаблона считается вредным"
- Шаблон проектирования становится Анти-шаблон
- Другой автор становится известным, пишет книгу, полную новых шаблонов дизайна...
Ответ 2
Большинство людей будут указывать на "Банда четырех" (Эрих Гамма, Ричард Хелм, Ральф Джонсон и Джон Влиссидес), которые написали book Design Patterns: Элементы многоразового объектно-ориентированного программного обеспечения. Нет реального окончательного списка, поскольку полезные шаблоны дизайна, безусловно, все время открываются.
Ответ 3
В Википедии есть хороший список. http://en.wikipedia.org/wiki/Design_pattern_(computer_science)
Большинство из них по соглашению сообщества (это сообщество людей, которые прочитали шаблоны дизайна или код:/)
Ответ 4
Короткий ответ: Нет.
Длинный ответ: поскольку, если кто-то что-то проектирует, и он, как правило, повторно используется другими, новый "шаблон дизайна" будет только что создан (или обнаружен?)
На самом деле количество шаблонов проектирования в существующих приложениях может быть огромным, но пока никто не классифицировал их.
Я бы добавил предыдущие ссылки эти два:
Ответ 5
Нет окончательного списка. Шаблоны обнаружены, а не изобретены, поэтому нет организации, которая может сказать "это образец" и "это не шаблон". Даже если бы он был один, это никому не было бы полезно.
Несмотря на это, "знаменитые" шаблоны - это те, которые описаны в Design Patterns или в книге GOF.
Ответ 6
Также может быть полезно распознать анти-шаблоны.
Ответ 7
Это хороший список шаблонов (из шаблона книги Enterprise Application Architecture):
Ответ 8
Идея шаблонов дизайна была придумана Кристофером Александром, написав об архитектурных узорах в зданиях и городах. Аналогичным образом, модели появились, когда инженеры приобрели больше опыта в области объектно-ориентированных методологий проектирования.
Существует не один официальный консорциум, который определяет, что такое шаблон и что не является образцом. Однако шаблоны обычно имеют длительный жизненный цикл, прежде чем они будут общеприняты. Сообщество разработчиков начинает участвовать в таких вещах, как PLOP (Pattern Languages of Programs) и их ежегодной конференции: Конференция 2008 года, которая сосредоточьтесь на авторах рисунков и энтузиастах, чтобы обсудить тему моделей и разработки новых шаблонов.
Ответ 9
Нет окончательного списка - для того, чтобы один из них, скорее всего, потребовал бы определенных полномочий, чтобы объявить, является ли шаблон шаблоном или просто... чем-то другим.
Некоторые шаблоны имеют смысл только в подмножестве языков - каноническая книга GOF концентрируется на Java (или это С++?) Книга о мой стол в офисе), и некоторые из описанных шаблонов не очень актуальны, например, в Ruby или VB6. И наоборот, конечно.
Ответ 10
Я бы сказал, что Союз списка в книге "Банда четырех" и "Фаулерские шаблоны архитектуры предприятия" даст вам 99% того, что вам когда-либо понадобилось бы знать.
Ответ 11
Существует каноническая книга: Gamma, Helm, Johnson, Vlissides: "Dessign Patterns - Элементы многоразового объектно-ориентированного программного обеспечения", которые начали все это. Он содержит 23 рисунка.
Ответ 12
Не может быть окончательного списка. Когда-нибудь.
Если вы видите некоторые решения проблемы, которые - для вас - имеют шаблон, который можно сформулировать, вы обнаружили шаблон дизайна. Вы всегда можете продолжить это.
Каждое умное, новое решение может быть генезиса для аналогичного решения, которое имеет общий характер. Шаблоны - это то, что вы используете, чтобы суммировать и захватить прохладное решение проблемы.
Человеческий мозг может найти закономерности почти во всем. Это то, что мы делаем, не думая об этом.