Code Smells
This is a collection of descriptions of Code Smells. The descriptions are original to this site although many of the names are taken from Martin Fowler’s book “Refactoring” 2nd Edition.
- Alternative Classes with Different Interfaces
- Bumpy Road
- Comments
- Data Class
- Data Clumps
- Deep Nesting
- Divergent Change
- Duplicated Code
- Feature Envy
- Global Data
- Insider Trading
- Large Class
- Lazy Element
- Long Function
- Long Parameter List
- Loops
- Message Chains
- Middle Man
- Mutable Data
- Mysterious Name
- Primitive Obsession
- Refused Bequest
- Repeated Switches
- Shotgun Surgery
- Speculative Generality
- Temporary Field
- Variable with Long Scope