Skip to main content

Что такое антипаттерн?

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

Чтобы пакет кода или набор поведений составляли антипаттерн, это должно происходить неоднократно. Для некоторых наблюдателей его также следует противопоставить известной схеме, которая почти наверняка будет работать лучше. Таким образом, отдельные ошибки не могут быть антипаттернами, и ни одна из них не может быть неудачной попыткой решить проблему, для которой пока нет решения. Это определение по-прежнему оставляет место для широкого круга неисправных процессов.

Даже в исходной категории разработки программного обеспечения существует множество различных типов антипаттернов. Некоторые связаны со сбоями в ожидании реакции пользователя. «Раздутый интерфейс» и «Creeping Featuritis» - почти все антипаттерны получили милые имена - относятся к программе с настолько сложным пользовательским интерфейсом, что она становится неуправляемой.

Другие антипаттерны связаны с типичными ошибками программирования. «Программирование копирования и вставки» и «Программирование Cargo Cult» описывают ситуации, в которых программисты слишком сильно полагаются на уже существующий материал вместо того, чтобы адаптировать свой код к программе, которую они в настоящее время разрабатывают. «Класс Бога» - это набор объектов в программе, которые стали слишком мощными; все это уязвимо, потому что все зависит от этих элементов.

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

Другие антипаттерны могут относиться ко многим типам организационной социологии. «Групповое мышление» происходит всякий раз, когда группа людей может поддерживать коллективное заблуждение, изолируя себя от внешнего воздействия. «Марш смерти» происходит, когда каждый, кто работает над конкретным проектом, знает, что неудача неизбежна, но не передает или не может передать эту информацию влиятельному лидеру. «Если это не сломано, не исправляйте это» - это общепринятая мудрость, которая может стать антипаттерном в тех случаях, когда возможный срыв будет неприемлемым.