Middle Man
Signs and Symptoms
If a class performs only one action, delegating work to another class why does it exist at all?
### Reasons for the ProblemThis smell can be the result of overzealous elimination of Message Chains. In other cases, it can be the result of the useful work of a class being gradually moved to other classes. The class remains as an empty shell that doesn’t do anything other than delegate.
Treatment
- If most of a method’s classes delegate to another class, Remove Middle Man is in order.
Payoff- Less bulky code.
### When to IgnoreDon’t delete middle man that have been created for a reason: