-
Pb conception C++
bonjour,
J'ai une question de conception en c++. Je d�bute en programmation objet et j'ai con�u une application graphique bas�e sur une boite de dialogue.
Pour simplifier et donner un exemple concret, un utilisateur choisit le titre d'un ouvrage, l'application se connecte � une base de donn�e et r�cup�re les informations de l'ouvrage(ann�e, auteur,...)
Pour r�aliser cela, j'ai deux classes principales, une permettant de gerer les bases de donn�es, d'effectuer des requ�tes et une autre repr�sentant l'ouvrage et ses attributs.
Les deux classes ont un couplage nul ce qui me permet la r�usabilit� de ces classes ailleurs mais du coup le code applicatif dans mes �v�nements est trop gros et difficile � maintenir. Si j'opte pour un couplage fort , je perd ma reusabilit� mais je simplifie grandement mon code applicatif. L'application fonctionne mais je pense que je manque encore d'abstraction et j'ai peut etre mal cern� le probl�me. Qqun aurait-il une id�e de la d�marche � adopter pour rendre cela maintenable? (cr�tion de classe tierce, heritage des classes de bases,.....)
merci
-
Salut,
A vrai dire, il n'y a rien � faire, il faudra bien � un moment que les deux classes se rejoignent quelque part...
Ta classe qui "attaque" la base de donn�e serait un candidat id�al pour contenir la classe ouvrage...
Si tu veux que les deux soient strictement r�utilisable, le plus facile est sans doute de cr�er une troisi�me classe qui soit la sp�cialisation (h�ritage) de la premi�re pour fournir les informations sous la forme de la deuxi�me � l'application...
L'id�e de l'utilisation de template pourrait sembler int�ressante, �tant donn� que les comportement de la classe qui attaque la base de donn�es sont toujours identiques:
- envoyer la requete
- (obtenir la r�ponse)
- fournir les donn�es sous la forme ad�quate (un template permet de n'avoir que cette fonction � sp�cialiser)
En fait, il faut, ni plus ni moins, partir sur le principe du "Modele Vue Controleur" ;)
-
Je te conseillerai de faire un heritage de classe ou d'interface sur tes classes d'acc�es aux donn�es. Mais d'un autre cot� il peut etre interessant de r�aliser un acc�es aux donn�es generalis� (une classe pour tes requetes).
Je te conseil cette article appliquer aux PHP : http://www.symfony-project.org/book/...Symfony-s-Code
En theorie, ou avec des exemples simple tout est g�n�ralement simple, mais d�s que l'on touche � la r�alit� c'est different. Le plus dur est de faire la par des chose en la reutilisation du code, et la simplification.
-
ok,je vous remercie, je vous rejoins concernant l'heritage de classe ou d'interface. Je vais jeter un coup d'oeil � tout �a.
merci pour le lien themadmax, il est super! :king: