Посередник
Також відомий як: Middle Man
Симптоми і ознаки
Якщо клас виконує тільки одну дію — делегує роботу іншому класу - варто замислитись, навіщо він взагалі існує.
![](/images/refactoring/content/smells/middle-man-01.png?id=14c65845c4e0cf03e7e9e48108090c98)
Причини появи
Цей запах може бути результатом фанатичної боротьби з ланцюжками викликів.
Також іноді буває, що все корисне навантаження класу поступово переноситься в інші класи, в результаті окрім делегуючих методів в ньому нічого не залишається.
Лікування
- Якщо більшу частину методів клас делегує іншому класу, треба скористатися видаленням посередника.
Виграш
- Зменшення розміру коду.
![](/images/refactoring/content/smells/middle-man-02.png?id=f507c0fd9a7bde8df8c22b9027d0a404)
Не варто чіпати, якщо...
Не видаляйте посередників, які були створені свідомо: