Anti-pattern
|
In computer science, anti-patterns are problems that occur frequently in computer programming and that programmers following good practice tend to avoid.
The term comes from the Gang of Four's Design Patterns book, which laid out examples of good programming practice. The authors termed these good methods "design patterns" -- as opposed to "anti-patterns".
Anti-patterns can also class as pitfalls, emphasising their role as dangerous traps in which unwary programmers might find themselves.
Recognised anti-patterns include:
- abstraction inversion
- accidental complexity
- action at a distance
- accumulate and fire
- ambiguous viewpoint
- analysis paralysis
- big ball of mud
- blind faith
- boat anchor
- busy spin
- caching failure
- checking type instead of membership
- code momentum
- coding by exception
- continuous obsolescence
- copy and paste programming
- creeping featurism
- dead end
- design by committee
- DLL hell
- double-checked locking
- empty subclass failure
- escalating commitment to a single, failing course of action
- fencepost error
- Gas factory
- God object
- input kludge
- interface bloat
- hard code
- lava flow
- magic numbers
- magic pushbutton
- mushroom management
- poltergeists
- premature optimization
- procedural code
- race hazard
- reinventing the wheel
- reinventing the square wheel
- scope creep
- smoke and mirrors
- software bloat
- spaghetti code
- stovepipe system
- vendor lock-in
- warm body
- yo-yo problem
See also
External links
http://www.antipatterns.com/briefing/