[VS.net 2005] Conception orientée objet
Bonjour à tous,
J'aurais besoin de vos avis concernant la conception orientée objet en .net.
Voici le contexte:
- J'ai créé une classe clsLog qui à des méthodes et membres pour permettre d'écrire à partir de n'importe ou une ligne dans un fichier log. Cette classe est instanciée avec un chemin vers le fichier log et utilisée partout dans mon appli.
- Une classe du même acabi pour une gestion statistique
- Une classe de gestion des paramètres de mon application (stocke et récupère les paramètres à partir d'un fichier XML)
- Une classe de gestion de ma connexion SQL.
Il faut savoir que la classe de gestion des stats et SQL font appels à la classe de gestion des logs.
D'autres classes de mon applis vont utiliser la classe de stats, de logs, ...
Quelle est la meilleur option:
- Déclarer et instancier de manière globale ces classes au démarrage et les utiliser dans toutes mes autres classes? Aie Aie Aie... Si je veux utiliser une classe dans un autre projet qui n'utilise pas la classe de log, ca va plantouiller.
- Instancier une nouvelle instance de cette classe partout ou c'est nécessaire? Aie Aie Aie... Il risque d'y avoir pas mal d'instancent...
- Passer la référence aux classes nécessaires au objets qui veulent les utiliser? Au début de l'appli je les instancie de manière globale, et chaque classe qui doit les utiliser recevra une référence à cette instance.
- Autre solution mais la je sèche totalement. Je suis pas encore très à l'aise avec la conception objet et surtout !!! L'encapsulation et la réusabilité.
Merci d'avance pour vos idées et retour d'expérience.
Un développeur en panique :)