Шаблоны для анализа, дизайна или архитектуры - PullRequest
2 голосов
/ 07 марта 2009

Проведя долгие годы анализа, проектирования и программирования в различных
домены и архитектуры, вы, возможно, натолкнулись на «образец» или хороший
практика, которая не была опубликована в виде шаблона (анализ, дизайн или архитектура).
Хотя вы уже делали это много раз, у него нет названия.

Интересуют шаблоны от SO-сообщества.

Ответы [ 4 ]

3 голосов
/ 07 марта 2009

Те, которые я когда-то думал, были моими собственными, то есть «я их изобрел», оказалось «изобретенными» 20 лет назад. Я не могу сосчитать, сколько раз я осознавал, что использовал уже известный шаблон проектирования, не зная его.

Это результат многих лет попыток решить те же проблемы. Я предполагаю, что если кто-то не «найдет» новый проблемный домен, вы вряд ли увидите новый шаблон.

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

2 голосов
/ 08 марта 2009

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

1 голос
/ 07 марта 2009

Я думаю, что почти все было изобретено более одного раза, но два шаблона, которые я использую все время, но не вижу, чтобы другие использовали так много, как мне кажется, это:

  • Не копируемый объект - большинство объектов в проблемная область (примеры: BankAccount, Person, Transaction) не должен быть копируемым, в отличие от объекты в области реализации (примеры: строка, массив, целое число). я поэтому используйте языковые функции для сделать такие объекты бизнес-домена uncopyable.

  • Владелец объекта - такой объект, как BankAccount владеет своими Сделками. Когда владелец объекта уничтожен, он управляет уничтожением этих собственные объекты. Эта картина довольно многое избавляет от необходимости использовать умные указатели.

1 голос
/ 07 марта 2009

Не совсем новый паттерн, но я часто использовал комбинацию паттерна фабрики и стратегии. Это препятствует тому, чтобы у фабрики были операторы switch, и вы можете настроить свою фабрику с новыми «фабричными стратегиями». Я не уверен, есть ли у этого шаблона имя. Если кто-нибудь может сказать мне, я был бы признателен.

Я писал об этом некоторое время назад: http://www.herrodius.com/blog/136

...