Шаблон фетиша – это распространенный антипаттерн в разработке программного обеспечения и управлении проектами, который реагирует на множество повторяющихся проблем, часто с неэффективными и вредными последствиями. Эта концепция была впервые предложена программистом Эндрю Коником в 1995 году. Она была вдохновлена книгой «Шаблоны проектирования», в которой описаны некоторые шаблоны проектирования для разработки программного обеспечения, которые считаются эффективными и надежными. Впоследствии книга «Анти-шаблоны» 1998 года еще больше расширила эту концепцию, включив в нее области архитектуры программного обеспечения и управления проектами. В этой статье мы углубимся в определение, применение и конкретные примеры «женского паттерна» в разработке программного обеспечения.
По мнению авторов шаблонов проектирования, антипаттерны имеют два ключевых элемента, которые отличают их от вредных привычек или плохого поведения:
Антишаблон — это широко используемый шаблон процессов, структур или поведения, который, хотя изначально кажется подходящим и обоснованным ответом на проблему, имеет больше плохих последствий, чем хороших.
Существуют и другие задокументированные, повторяемые и проверенные эффективные решения проблем, которые пытается решить антипаттерн.
Согласно «Трём правилам», чтобы считаться антипаттерном, паттерн должен соблюдаться как минимум трижды.
Документирование антипаттернов можно использовать для эффективного анализа проблемного пространства и сбора экспертных знаний. Хорошая документация по антишаблонам не только документирует неблагоприятные последствия шаблонов, но также предлагает альтернативные решения или способы их улучшения.
В разработке программного обеспечения к распространенным антипаттернам относятся: большой ком грязи, божественные объекты, магические числа и полтергейст.
Беспроектированный хаос относится к программной системе, в которой отсутствует ощутимая архитектура. Хотя это и нежелательно с точки зрения разработки программного обеспечения, такие системы часто встречаются в условиях давления со стороны бизнеса, текучести разработчиков и деградации кода. Брайан Форт и Джозеф Йодер подробно определили эту концепцию в статье 1997 года:
Непродуманный беспорядок — это беспорядочно структурированные, обширные и хаотичные «спагетти-джунгли». Эти системы демонстрируют значительный неконтролируемый рост и постоянные специальные исправления.
К антипаттернам в управлении проектами относятся: Blowhard Jamboree, паралич анализа, Viewgraph Engineering, смерть из-за планирования, страх успеха и т. д.
Эти антишаблоны часто возникают из-за плохого управления или плохих методов коммуникации, что приводит к медленному прогрессу проекта и низкому моральному духу команды.
Понимание и выявление этих антипаттернов имеет решающее значение при проектировании программного обеспечения и управлении проектами. Избегая распространенных ошибок фетиш-модели, команды могут разрабатывать более стабильные и эффективные решения, что, в свою очередь, способствует успешному завершению проекта. Итак, возможно ли, что вы тоже находитесь под влиянием этих антипаттернов, даже не осознавая этого?