Conception Classe Pattern
Bonjour,
Je suis sur un problème de conception JAVA.
Voici les données :
J'ai 3 fichiers (type 1, type 2 , type 3) que je dois leur appliqué des contrôles , je peux faire trois modules dans chacune placés les contrôles pour chaque fichiers.
Cependant, il y a des contrôles commun pour ces 3 fichiers , je propose une idée. J'aimerai avoir votre avis, je voudrais créer une Interface "Control" dans laquelle je place tous les contrôles ainsi j’implémenterai pour chaque type de fichier l'implementation associé.
Mais, comment puis je faire pour ne pas ré implémenté les contrôles déjà utiliser par le fichier de type 1 par exemple que je voudrais ré utiliser pour le type 2.
Je pense que j'y suis presque, y a t il un design pattern adapté à ce genre de conception ?
Merci pour votre aide
Conception Classe Pattern
Ok, je sais ce que c'est l'héritage, mais je ne sais pas le mettre en oeuvre pour ce cas.
Ça voudrait dire pour mon problème de conception,
Créer une Interface Controle.
Créer plusieurs Implémentation pour chaque type de fichiers.
Ensuite pour chaque Controle j'hérite de l'interface , ainsi je pourrais avoir accés à toute les implentations de controles en commun ?
Pourrais tu me le confirmer s'il te plait ? ou me proposer une architecture .
Merci d'avance
Conception Classe Pattern
Merci pour ta réponse, je viens de tester et ça fonctionne à merveille.
Par contre, cela implique que seule les fichiers du type 2 et du type 3 peuvent bénéficier des contrôles du fichier du type 1.
Dans l'évolution des choses, on pourrait s’imaginer qu'un contrôle supplémentaire du type 2 pourrait être utile donc utiliser par contrôle du type 1.
Du coup, on pourrait pas l'utiliser.
Code:
1 2 3 4 5 6 7 8 9
|
File f = new File("D://logo.gif") ;
//ControlFichier1 controle1 = new ControlFichier1();
//controle1.isValid(f);
ControlFichier2 controle2 = new ControlFichier2(controle1);
controle2.isValid(f);
} |
Je pousse le raisonnement assez loin pour ne pas avoir d’inter blocage .
Est ce que c'est possible en gros que tous les contrôles de fichier de n'importe quels type puisse être utiliser dans n'importe lesquels.
Merci pour ta patience et ton aide.