Anti-pattern


Anti-patterns, also called pitfalls, are classes of commonly-reinvented bad solutions to problems. They are studied as a category so they can be avoided in the future, and so instances of them may be recognized when investigating non-working systems. The term originates in computer science, apparently inspired by the Gang of Four's book Design Patterns, which displayed examples of high-quality programming methods. The authors named these methods "design patterns", by analogy with the same term used in architecture. The book Anti-Patterns (by William Brown, Raphael Malveau, Skip McCormick and Tom Mowbray, and more recently Scott Thomas) describes anti-patterns as natural counterparts or follow-ons to the study of design patterns. By formally describing repeated mistakes, one can recognize and refactor broken systems. Anti-patterns are not mentioned in the first edition of Design Patterns, which predated the term "anti-pattern"; however, one of the original Gang of Four authors, the late John Vlissides, offers an endorsement on the back cover.

Programmers should try to avoid anti-patterns whenever possible, which requires diagnosing them as early as possible in the software life-cycle. The concept of anti-patterns is readily applied to engineering in general.

Recognized software development anti-patterns

For a more comprehensive, alphabetical list, see .

Management anti-patterns

Project management anti-patterns

General design anti-patterns

Object-oriented design anti-patterns

Programming anti-patterns

Methodological anti-patterns

Configuration management anti-patterns

Organizational anti-patterns

See also

References

External links