Предложения: контрпримеры Anti-Pattern - PullRequest
2 голосов
/ 06 мая 2010

Не похоже, что этот точный вопрос задавался ранее, поэтому я уйду:

Большинство из нас знакомы с концепцией анти-паттерна. Тем не менее, избегание реализации анти-шаблонов может в принципе пойти слишком далеко и вызвать проблемы само по себе. Например, у «Design by Committee» есть контрпример, который я бы назвал «Design by Maverick» - где дизайн важной функции передается человеку, чтобы он делал то, что он думает лучше всего, с целью рассмотрения их работа позже и решение, должно ли это быть завершено или пройти другую итерацию. На практике это занимает гораздо больше времени, так как остальная часть команды занята другими делами, и может в конечном итоге получить функцию, которая никому не нужна, особенно если Maverick не является опытным конечным пользователем.

У кого-нибудь есть еще примеры контрпримеров против паттернов?

1 Ответ

0 голосов
/ 06 мая 2010

Я вижу проблему в самих анти-паттернах. Легко указать на неправильные решения, но сложнее найти хорошие. Почти всегда качество решения зависит от контекста, поэтому иногда даже анти-шаблон при хорошей реализации может использоваться больше, чем другие решения. Таким образом, пространство для решений или шаблонов в целом довольно неисчерпаемо, и мы должны решить, какие из них следует рассмотреть. Неправильные решения или хорошие решения? Я думаю, что смотреть на плохие решения и знать, что они плохие, не так полезно, как смотреть на хорошие, потому что из хороших (регулярных шаблонов) вы можете получить также хорошие принципы, которые использовались при взаимодействии с этим решением (как с Принципы ОО дизайна в книге по шаблонам дизайна GoF). Что касается вашего точного примера, я где-то слышал о «Доброжелательном диктаторе» и некоторой разновидности демократии (с собственным именем), которая была скорректирована путем добавления большего числа голосов определенным людям в зависимости от различных приоритетов проекта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...