List of software anti-patterns
Anti-patterns are commonly used ways of doing software engineering that are not useful or cause more issues than they solve. See design patterns for the opposite. There are many diverse types of software anti-patterns. Some relate to software design, object-oriented programming, computer programming, methodological, configuration management, DevOps, and other aspects of software engineering. Several books have popularized the idea and teaching of anti-patterns.
Anti-patterns can be found in anything that has organization, from project management to cultures, but this list focuses solely on software and computer science anti-patterns.
Generic software design anti-patterns
*Object-oriented anti-patterns
*Programming anti-patterns
- Action at a distance
- Boat anchor
- Lasagna code
- Lava flow
- Magic numbers
- Magic strings
- Repeating yourself
- Soft code
Methodological anti-patterns
- Copy and paste programming
- Golden hammer
- Not invented here or syndrome
- Premature optimization
- Programming by permutation
- Silver bullet