Tenir compte de la démonstration simplifiée suivante:Comment concevoir une interface pour le confinement Muliple
classe X
contiennent classe Y
. Classe Y
a la méthode publique, Y.doYStuff()
.
Comment conçoit-on l'interface X
qui utilise la méthode de Y
telle quelle?
Si l'on ajoute une méthode publique à X
qui transmet simplement le requst à Y
, il en résulte une interface de X
pléthorique non souhaitable et la dépendance de X
code pour le code Y
. Cette approche devient pire à confinement multiple.
Si l'on utilise un accès indirect, tel que X.Y.doYStuff()
, la conception est beaucoup plus propre, mais cela entraîne la rupture de l'encapsulation X
. Donc, y a-t-il une conception propre et correcte qui permet d'utiliser des méthodes d'une classe interne hors classe?