Page 1 sur 1

Modèle UML formulaires

Posté : 30 oct. 2007, 17:11
par mcorgnet
Je viens à nouveau vous embêter avec mes objets.

J'ai décidé de faire un modèle UML de tout ça, avec le peu de connaissances que j'ai d'UML.

J'ai bien tout lu la doc que l'on m'a filée ici :

http://uml.free.fr/cours/i-p14.html

C'est pas évident, d'ailleurs, de s'éloigner du contexte informatique pour modéliser.

Ce que j'essaie de faire désormais, c'est de bien classer mes objets :

Formulaire
Textarea
Select
Input (qui sera étendu par chaque type de champ possible)

Dans mon modèle, dois-je déclarer mes textarea, select, input comme dépendants de formulaire ? Ou au même niveau ?

Ensuite, comment faire pour lier les classes entre elles, sans héritage ? (faire une composition ou une agrégation), je n'ai pas vraiment compris comment réaliser ça techniquement.

Merci encore de votre aide.

Posté : 30 oct. 2007, 17:50
par zeus
Pour moi, les textarea, select et input sont "regroupables" sous la notion de champ.
Je verrais donc bien une classe mère abstraite champ qui serait hérités par les classes textarea, select et input.
A son tour, la classe input pourra avoir des classe filles (text, file, ...)

Ensuite, une classe formulaire qui contient soit uniquement des champs, soit des textarea, des select et des input.

Posté : 30 oct. 2007, 18:01
par mcorgnet
Du coup, si je les regroupe sous la classe champ, et que je laisse aussi la classe formulaire, ça ne me fera pas une classe inutile entre les deux ?

Champ sera une classe presque vide, étendue par textarea, select, input.

Il y aura une composition entre formulaire et champ ?

Posté : 30 oct. 2007, 18:09
par zeus
La classe champ sera une classe abstraite. Cela signifie qu'elle ne pourra pas être instanciée, juste héritée.
Le principe de la classe abstraite est que tu peux définir des attributs et des comportements qui seront hérités dans chaque classe fille. Par exemple, cette classe contiendra un attribut "id", qui sera partagé par toutes les classes filles. Du coup, quand tu manipuleras une instance d'une classe fille de champ, tu sauras qu'elle contient un attribut "id" ;)

Posté : 30 oct. 2007, 18:16
par mcorgnet
Du coup, ça prend forme. On me l'avait déjà dit, je l'applique.

La question qui reste est : quelle relation je mets en place entre formulaire et champ ? Et comment ?