Supprimer l’intermédiaire.
Une classe possède trop de méthodes qui se contentent de déléguer à d’autres objets.
Supprimez ces méthodes et obligez le client à appeler directement les méthodes finales.
##Example
##Why Refactor
Pour décrire cette technique, nous utiliserons les termes de Masquer le délégué, à savoir :
-
Le serveur est l’objet auquel le client a un accès direct.
-
Le délégué est l’objet final qui contient la fonctionnalité dont le client a besoin.
Il existe deux types de problèmes :
-
La classe-serveur ne fait rien par elle-même et ne crée qu’une complexité inutile. Dans ce cas, demandez-vous si cette classe est vraiment nécessaire.
-
Chaque fois qu’une nouvelle fonctionnalité est ajoutée au délégué, vous devez créer une méthode déléguante correspondante dans la classe-serveur. Si de nombreuses modifications sont apportées, cela deviendra plutôt fastidieux.
##How to Refactor
-
Créez un getter pour accéder à l’objet classe-déléguée depuis l’objet classe-serveur.
-
Remplacez les appels aux méthodes déléguantes de la classe-serveur par des appels directs aux méthodes de la classe-déléguée.