Bonjour, Pourriez-vous me donner votre avis sur ce petit exemple simpliste ?

J'ai une couche supérieure, une autre inférieure. Je souhaite appeler la fonction MultiplicationParDeux de la couche inférieure (à partir de ma couche supérieure) en utilisant le Pattern Factory (inutile dans ce cas je sais).

Couche Supérieure
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Public Class CoucheSuperieure
 
    ' Instancie la factory de la couche inférieure
    ' Appel de la méthode ReturnCoucheInferieureObject qui retourne un object CoucheInferieure
    ' Return de l'objet CoucheInferieure en tant que ICoucheInferieure
    Function GetDependency() As CoucheInferieure.ICoucheInferieure
        Dim Factory As New CoucheInferieure.CoucheInferieureFactory
        Return Factory.ReturnCoucheInferieureObject()
    End Function
 
    ' Appel de la fonction MultiplicationParDeux de la couche inférieure
    Sub MultiplicationParDeux()
        GetDependency.MultiplicationParDeux(3)
    End Sub
 
End Class

Couche Inférieure
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
Public Class CoucheInferieure
    Implements ICoucheInferieure
 
    Sub MultiplicationParDeux(ByVal chiffre) Implements ICoucheInferieure.MultiplicationParDeux
        MsgBox("" & chiffre * 2)
    End Sub
 
End Class
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
Public Interface ICoucheInferieure
    Sub MultiplicationParDeux(ByVal chiffre as integer)
End Interface
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
Public Class CoucheInferieureFactory
    Function ReturnCoucheInferieureObject() As ICoucheInferieure
        Return New CoucheInferieure
    End Function
End Class