Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
cnam:utc503:td2-b [2024/09/12 02:20] – [Conception Objet] jcheron | cnam:utc503:td2-b [2024/09/12 08:25] (Version actuelle) – [Conception Objet] jcheron | ||
---|---|---|---|
Ligne 36: | Ligne 36: | ||
==== Conception Objet ==== | ==== Conception Objet ==== | ||
- | === Orientation === | + | Proposer une solution orientée objet pour l' |
< | < | ||
- | <uml> | ||
- | @startuml | ||
- | interface VerificateurCouleur { | ||
- | +estCouleur() : boolean | ||
- | } | ||
- | interface VerificateurPaire { | + | === Orientation === |
- | +aPaire() : boolean | + | |
- | +aBrelan() : boolean | + | |
- | +aCarre() : boolean | + | |
- | } | + | |
- | + | ||
- | interface VerificateurSuite { | + | |
- | +estSuite() : boolean | + | |
- | } | + | |
- | + | ||
- | class Carte { | + | |
- | +rang: String | + | |
- | +couleur: String | + | |
- | +getValeurRang() : int | + | |
- | +toString() : String | + | |
- | } | + | |
- | + | ||
- | abstract class Combinaison { | + | |
- | -cartes: List[Carte] | + | |
- | +Combinaison(cartes: | + | |
- | +estValide() : boolean | + | |
- | +getValeurComparaison() : int | + | |
- | +compareTo(other: | + | |
- | } | + | |
- | + | ||
- | class Paire extends Combinaison implements VerificateurPaire { | + | |
- | +estValide() : boolean | + | |
- | +getValeurComparaison() : int | + | |
- | } | + | |
- | + | ||
- | class DoublePaire extends Combinaison implements VerificateurPaire { | + | |
- | +estValide() : boolean | + | |
- | +getValeurComparaison() : int | + | |
- | } | + | |
- | + | ||
- | class Brelan extends Combinaison implements VerificateurPaire { | + | |
- | +estValide() : boolean | + | |
- | +getValeurComparaison() : int | + | |
- | } | + | |
- | + | ||
- | class Suite extends Combinaison implements VerificateurSuite { | + | |
- | +estSuite() : boolean | + | |
- | +estValide() : boolean | + | |
- | +getValeurComparaison() : int | + | |
- | } | + | |
- | + | ||
- | class SuiteCouleur extends Suite implements VerificateurCouleur { | + | |
- | +estCouleur() : boolean | + | |
- | +estValide() : boolean | + | |
- | +getValeurComparaison() : int | + | |
- | } | + | |
- | + | ||
- | class QuinteFlushRoyale extends SuiteCouleur { | + | |
- | +estValide() : boolean | + | |
- | +getValeurComparaison() : int | + | |
- | +estQuinteFlushRoyale() : boolean | + | |
- | } | + | |
- | + | ||
- | class Carre extends Combinaison implements VerificateurPaire { | + | |
- | +estValide() : boolean | + | |
- | +getValeurComparaison() : int | + | |
- | } | + | |
- | + | ||
- | class Full extends Combinaison implements VerificateurPaire { | + | |
- | +estValide() : boolean | + | |
- | +getValeurComparaison() : int | + | |
- | } | + | |
- | + | ||
- | class EvaluateurDeCombinaison { | + | |
- | +EvaluateurDeCombinaison(cartesJoueur: | + | |
- | +evaluer() : Combinaison | + | |
- | +comparerMains(main1: | + | |
- | } | + | |
- | @enduml | + | |
- | </ | + | |
- | < | + | |
== Interfaces (ICouleur, IPaire, IQuinte) : == | == Interfaces (ICouleur, IPaire, IQuinte) : == | ||
Définissent des méthodes pour vérifier des caractéristiques spécifiques des mains (flush, paires, suites). | Définissent des méthodes pour vérifier des caractéristiques spécifiques des mains (flush, paires, suites). | ||
Ligne 137: | Ligne 57: | ||
Évalue et compare les combinaisons pour déterminer la meilleure main. | Évalue et compare les combinaisons pour déterminer la meilleure main. | ||
+ | < |