AntiPatterns

SHEET · DESIGN PATTERNS

Design Patterns

Design Patterns vs. AntiPatterns
Design Patterns vs. AntiPatterns

A design pattern focuses on a specific software design problem. It lays out the context where the problem shows up, the forces that need to be resolved, and how those forces get balanced into a solution, with its benefits, its related solutions, and the negative forces left over (called consequences).

Patterns usually assume a clean context, one without much legacy baggage. In practice, legacy and existing problems are the norm. AntiPatterns start from the opposite end: an existing negative solution, maybe the result of a manager's or developer's inexperience, or a good pattern applied in the wrong context. The AntiPattern names that negative solution clearly enough that an organization can recognize it, understand its consequences, and apply a refactored solution to get out of it.

© Copyright 2017–2026 William Brown, Raphael Malveau, Hays McCormick, Thomas Mowbray, and Scott W. Thomas. All rights reserved.
For problems or questions regarding this web contact [Web Master].
Last updated: September 12, 2026
View the 1999 site — Nostalgia ↗