# Ohara_MAUI ```plantuml @startuml Class Bateau { + string NomRomanise + int PremierChap + int PremierEp + string Description + string Caracteristique + Bateau(string nom, string nomRomanise, int premierChap, int premierEp, string description, string caracteristique, string image) + Bateau(string nom, string nomRomanise, Equipage affiliation, int premierChap, int premierEp, string description, string caracteristique, string image) } Class Bestiaire { + string Origine + string Description + string Caracteristique + Bestiaire(string nom, string origine,\n string description, string caracteristiques, string image) } Class Equipage { + string NomRomanise + string Region + int PremierChap + int PremierEp + bool Statut + string Description + Equipage(string nom, string nomRomanise, string region, int premierChap,\n int premierEp, bool statut, string description, string image) } Class FruitDuDemon { + string NomRomanise + string Type + int PremierChap + int PremierEp + string Description + string Forces + string Faiblesses + FruitDuDemon(string nom, string nomRomanise, string type, int premierChap, int premierEp, string description, string forces, string faiblesses, string image) + FruitDuDemon(string nom, string nomRomanise, string type, int premierChap, int premierEp, string description, string forces, string faiblesses, string image, List utilisateur) } Class Ile { + string NomRomanise + string Region + int PremierChap + int PremierEp + string Description + string Geographie + Ile(string nom, string nomRomanise, string region, int premierChap, \n int premierEp, string description, string geographie, string image) } Class Personnage { + double Prime + string Epithete + int Age + double Taille + string Origine + string Biographie + string Citation + Personnage(string nom , double prime, string epithete, int age, dobule taille,\n string origine, string biographie,string citation, string image) } Class ObjetOhara { + string Nom + string? Image ObjetOhara(string nom, string image) } Class XML_Serializer { + XML_Serializer() + void SetPersonnage(List~Personnage~ listePerso) + void SetFDD(List~FruitDuDemon~ listeFDD) + void SetBestiaire(List~Bestiaire~ listeBest) + void SetEquipage(List~Equipage~ listeEquip) + void SetIle(List~Ile~ listIle) + void SetBateau(List~Bateau~ listeBateau) + IEnumerable~Bateau~ GetBateaux() + IEnumerable~Bestiaire~ GetBestiaires() + IEnumerable~Equipage~ GetEquipages() + IEnumerable~FruitDuDemon~ GetFruits() + IEnumerable~Ile~ GetIles() + IEnumerable~Personnage~ GetPersonnages() } Interface IDataManager { IEnumerable~Bateau~ GetBateaux() IEnumerable~Bestiaire~ GetBestiaires() IEnumerable~Equipage~ GetEquipages() IEnumerable~FruitDuDemon~ GetFruits() IEnumerable~Ile~ GetIles() IEnumerable~Personnage~ GetPersonnages() } Class Manager { + IDataManager DataManager + Manager() + List~Personnage~ GetPersonnages() + List~FruitDuDemon~ GetFruits() + List~Equipage~ GetEquipages() + List~Bateau~ GetBateaux() + List~Bestiaire~ GetBestiaires() + List~Ile~ GetIles() + FiltrerFDD(type : string) : List~FruitDuDemon~ + RechercherFDD(text : string, listeFDD : List~FruitDuDemon~) : List~FruitDuDemon~ + GetFavoris() : List~ObjetOhara~ + AddBateauFavoris(bateau : Bateau) : void } Class StubManager { + StubPersonnage : StubPersonnage + StubFruitDuDemon : StubFruitDuDemon + StubEquipage : StubEquipage + StubBateau : StubBateau + StubBestiaire : StubBestiaire + StubIle : StubIle + StubManager() + GetPersonnages() : IEnumerable~Personnage~ + GetFruits() : IEnumerable~FruitDuDemon~ + GetEquipages() : IEnumerable~Equipage~ + GetBateaux() : IEnumerable~Bateau~ + GetBestiaires() : IEnumerable~Bestiaire~ + GetIles() : IEnumerable~Ile~ } Class StubBateau { + RecupererBateau() : IEnumerable~Bateau~ } Class StubBestiaire { + RecupererBestiaire() : IEnumerable~Bestiaire~ } Class StubEquipage { + RecupererEquipage() : IEnumerable~Equipage~ } Class StubFruitDuDemon { + RecupererFruitDuDemon() : IEnumerable~FruitDuDemon~ } Class StubIle { + RecupererIle() : IEnumerable~Ile~ } Class StubPersonnage { + RecupererPersonnage() : IEnumerable~Personnage~ } FruitDuDemon --> Personnage : + Utilisateur Personnage --> Equipage : + Equipage Personnage --> FruitDuDemon : + Fruit Bateau --> Equipage : + Affiliation Equipage --> Personnage : + Capitaine Equipage --> Personnage : + Membre Equipage --> Equipage : + Allie Ile --|> ObjetOhara FruitDuDemon --|> ObjetOhara Personnage --|> ObjetOhara Equipage --|> ObjetOhara Bateau --|> ObjetOhara Bestiaire --|> ObjetOhara @enduml ``` # Description Ceci est le diagramme de classe de notre application Ohara. Il possède 7 classes : -Bateau -Bestiaire (qui représente toutes les différentes races dans l'univers de One Piece) -Equipage -Fruit du démon -Ile -Personnage -Objet Ohara (Regroupe le nom et l'image qui reviennent à chaque fois dans toutes les classes) Nous avons regroupé le nom et l'image dans une classe "Objet Ohara" dont toutes les autres classes hérite pour éviter la redondance. Ce diagramme de classe représente la structure de notre application.