Code Smells
by mahadev shindhe
1. Bloaters
1.1. Long Method
1.2. Primitive Obession
1.3. Data Clumps
1.4. Large Class
1.5. Long Parameter List
2. Object-Oriented Abusers
2.1. Alternative Classes with differenent interfaces
2.2. Refused Bequest
2.3. Temporary Field
2.4. Switch Statements
3. Change Preventers
3.1. Divergent Change
3.2. Parallel Inheritance Hierarchies
3.3. Shotgun Surgery
4. Dispensables
4.1. Comments
4.2. Data Class
4.3. Lazy Class
4.4. Duplicate Code
4.5. Dead Code
4.6. Speculative Generality
5. Couplers
5.1. Feature Envy
5.2. Incomplete Library Class
5.3. Middle Man
5.4. Inappropriate Intimacy
5.5. Message Chains