scoubidou944
Messages postés714Date d'inscriptionmardi 22 avril 2003StatutMembreDernière intervention19 janvier 2017
-
6 sept. 2005 à 17:15
TheSaib
Messages postés2367Date d'inscriptionmardi 17 avril 2001StatutMembreDernière intervention26 décembre 2007
-
6 sept. 2005 à 20:27
n'étant pas super à l'aise avec les interface, on va prendre un exemple de base.
J'ai un objet de type Node qui contient :
- un nom
- un dictionaire de Node (donc des objets fils)
- un dictionnaire d'Attribute
L'objet Attribute contient :
- un nom
- une valeur
J'ai un objet englobant qui contient un Node servant de base.
Plutot que de creer une fonction SaveIni et une SaveXml pour Node &
Attribute, je souhaiterais implémenter une interface pour pouvoir
étendre par la suite à partir je pense d'un prototype de style :
Node::Export (IFilter filter)
De IFilter, je dériverais IFilterIni & IFilterXml.
Pour l'export je dirais n'avoir besoin que du nom de fichier de sortie commun à toutes les implémentations.
Maintenant, j'suis perdu pour organiser tout cela.
----------------------------
C++ forever
C# amateur
TheSaib
Messages postés2367Date d'inscriptionmardi 17 avril 2001StatutMembreDernière intervention26 décembre 200723 6 sept. 2005 à 20:27
Tout dépend. Par exemple dans une classe tu peux avoir des méthodes déjà implémenté, des propertys des attributs... DAns les interfaces tu n'as que des signatures ! Si tu dérives et que tu as des méthodes avec les mêmes comportements alorsla classe abstraite est une bonne solution, tu pourrais même déclarer ton interface, faire ta classe abstraite qui implémente ton interface.
Si tu veux être très conceptuel objet, je pense que tu devrais regarder du côté des design pattern, notemment le "Stratégie" qui semble correspondre a ce que tu veux faire.