-
The Bloaters
- Long Method
- Large Class
- Primitive Obsession
- Long Parameter List
- Data Clumps
-
The Object-Orientation Abusers
- Switch Statements
- Temporary Field
- Refused Bequest
- Alternative Classes with Different Interfaces
-
The Change Preventers
- Divergent Change
- Shotgun Surgery
- Parallel Inheritance Hierarchies
-
The Dispensables
- Lazy class
- Data class
- Duplicate Code
- Dead Code,
- Speculative Generality
-
The Couplers
- Feature Envy
- Inappropriate Intimacy
- Message Chains
- Middle Man