This is an exercise designed to practice the skill of detecting Code Smells and refactoring the code to fix the problems. Solution is also included.
Code Smells covered:
- Long method
- Duplicate code within class
- Duplicate code within method
- Duplicate code across classes
- Magic Number
- Feature Envy (2 instances)
- Improper Naming
- Dead Code
- Lazy Class
- Switch Case
- Indecent Exposure
- Collapse Hierarchy (Lazy Class)
- Long Parameter List