From 9cec1cf7cd22b40e1a714d9fe17209ab89dc692f Mon Sep 17 00:00:00 2001 From: Guillaume REY Date: Thu, 1 Jun 2023 19:25:21 +0200 Subject: [PATCH] Diagramme de classe en mettant en avant la partie persistance manque a faire la description --- README.md | 259 +++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 239 insertions(+), 20 deletions(-) diff --git a/README.md b/README.md index c07efdd..2880f43 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ skinparam classArrowColor #800000 skinparam classFontColor #black skinparam classFontName Tahoma -Class Bateau { +class Bateau { + string NomRomanise + int PremierChap + int PremierEp @@ -21,14 +21,14 @@ Class Bateau { + Bateau(string nom, string nomRomanise, Equipage affiliation, int premierChap,\n int premierEp, string description, string caracteristique, string image) } -Class Bestiaire { +class Bestiaire { + string Origine + string Description + string Caracteristique + Bestiaire(string nom, string origine, string description,\n string caracteristiques, string image) } -Class Equipage { +class Equipage { + string NomRomanise + string Region + int PremierChap @@ -38,7 +38,7 @@ Class Equipage { + Equipage(string nom, string nomRomanise, string region, int premierChap,\n int premierEp, bool statut, string description, string image) } -Class FruitDuDemon { +class FruitDuDemon { + string NomRomanise + string Type + int PremierChap @@ -50,7 +50,7 @@ Class FruitDuDemon { + FruitDuDemon(string nom, string nomRomanise, string type, int premierChap, int premierEp, string description,\n string forces, string faiblesses, string image, List utilisateur) } -Class Ile { +class Ile { + string NomRomanise + string Region + int PremierChap @@ -60,7 +60,7 @@ Class Ile { + Ile(string nom, string nomRomanise, string region, int premierChap, \n int premierEp, string description, string geographie, string image) } -Class Personnage { +class Personnage { + double Prime + string Epithete + int Age @@ -71,13 +71,13 @@ Class Personnage { + Personnage(string nom , double prime, string epithete, int age, dobule taille,\n string origine, string biographie,string citation, string image) } -Class ObjetOhara { +class ObjetOhara { + string Nom + string? Image ObjetOhara(string nom, string image) } -Class XML_Serializer { +class XML_Serializer { + XML_Serializer() + void SetPersonnage(List listePerso) + void SetFDD(List listeFDD) @@ -93,7 +93,7 @@ Class XML_Serializer { + IEnumerable GetPersonnages() } -Interface IDataManager { +interface IDataManager { IEnumerable GetBateaux() IEnumerable GetBestiaires() IEnumerable GetEquipages() @@ -102,7 +102,7 @@ Interface IDataManager { IEnumerable GetPersonnages() } -Class Manager { +class Manager { + IDataManager DataManager + Manager() + List GetPersonnages() @@ -117,7 +117,7 @@ Class Manager { + void AddBateauFavoris(Bateau bateau) } -Class StubManager { +class StubManager { + StubPersonnage StubPersonnage + StubFruitDuDemon StubFruitDuDemon + StubEquipage StubEquipage @@ -133,27 +133,27 @@ Class StubManager { + IEnumerable GetIles() } -Class StubBateau { +class StubBateau { + IEnumerable RecupererBateau() } -Class StubBestiaire { +class StubBestiaire { + IEnumerable RecupererBestiaire() } -Class StubEquipage { +class StubEquipage { + IEnumerable RecupererEquipage() } -Class StubFruitDuDemon { +class StubFruitDuDemon { + IEnumerable RecupererFruitDuDemon() } -Class StubIle { +class StubIle { + IEnumerable RecupererIle() } -Class StubPersonnage { +class StubPersonnage { + IEnumerable RecupererPersonnage() } @@ -265,6 +265,217 @@ Ce diagramme de classe représente la structure de notre application. + + + + + +# Diagramme de classe en mettant en avant la partie persistance + + +```plantuml +@startuml + +hide circle +allowmixing +skinparam classAttributeIconSize 0 +skinparam classBackgroundColor #ffffb9 +skinparam classBorderColor #800000 +skinparam classArrowColor #800000 +skinparam classFontColor #black +skinparam classFontName Tahoma + +class Bateau { + + string NomRomanise + + int PremierChap + + int PremierEp + + string Description + + string Caracteristique + + Bateau(string nom, string nomRomanise, int premierChap, int premierEp,\n string description, string caracteristique, string image) + + Bateau(string nom, string nomRomanise, Equipage affiliation, int premierChap,\n int premierEp, string description, string caracteristique, string image) +} + +class Bestiaire { + + string Origine + + string Description + + string Caracteristique + + Bestiaire(string nom, string origine, string description,\n 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,\n string description, string forces, string faiblesses, string image) + + FruitDuDemon(string nom, string nomRomanise, string type, int premierChap, int premierEp, string description,\n 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) +} + +skinparam class XML_Serializer #DarkOrchid { + BackgroundColor LightBlue + + XML_Serializer() + + void SetPersonnage(List listePerso) + + void SetFDD(List listeFDD) + + void SetBestiaire(List listeBest) + + void SetEquipage(List listeEquip) + + void SetIle(List listIle) + + void SetBateau(List listeBateau) + + IEnumerable GetBateaux() + + IEnumerable GetBestiaires() + + IEnumerable GetEquipages() + + IEnumerable GetFruits() + + IEnumerable GetIles() + + IEnumerable GetPersonnages() +} + +interface IDataManager { + IEnumerable GetBateaux() + IEnumerable GetBestiaires() + IEnumerable GetEquipages() + IEnumerable GetFruits() + IEnumerable GetIles() + IEnumerable GetPersonnages() +} + +class Manager { + + IDataManager DataManager + + Manager() + + List GetPersonnages() + + List GetFruits() + + List GetEquipages() + + List GetBateaux() + + List GetBestiaires() + + List GetIles() + + List FiltrerFDD(string type) + + List RechercherFDD(string text, List listeFDD) + + List GetFavoris() + + void AddBateauFavoris(Bateau bateau) +} + +class StubManager { + + StubPersonnage StubPersonnage + + StubFruitDuDemon StubFruitDuDemon + + StubEquipage StubEquipage + + StubBateau StubBateau + + StubBestiaire StubBestiaire + + StubIle StubIle + + StubManager() + + IEnumerable GetPersonnages() + + IEnumerable GetFruits() + + IEnumerable GetEquipages() + + IEnumerable GetBateaux() + + IEnumerable GetBestiaires() + + IEnumerable GetIles() +} + +class StubBateau { + + IEnumerable RecupererBateau() +} + +class StubBestiaire { + + IEnumerable RecupererBestiaire() +} + +class StubEquipage { + + IEnumerable RecupererEquipage() +} + +class StubFruitDuDemon { + + IEnumerable RecupererFruitDuDemon() +} + +class StubIle { + + IEnumerable RecupererIle() +} + +class StubPersonnage { + + IEnumerable RecupererPersonnage() +} + + +FruitDuDemon --> "+ Utilisateur" Personnage +Personnage --> "+ Equipage" Equipage +Personnage --> "+ Fruit" FruitDuDemon +Bateau --> "+ Affiliation" Equipage +Equipage --> "+ Capitaine" Personnage +Equipage --> "+ Membre" Personnage +Equipage --> "+ Allie" Equipage + +Ile --|> ObjetOhara +FruitDuDemon --|> ObjetOhara +Personnage --|> ObjetOhara +Equipage --|> ObjetOhara +Bateau --|> ObjetOhara +Bestiaire --|> ObjetOhara + +StubManager --|> IDataManager +XML_Serializer --|> IDataManager + +StubManager --> "+ StubIle" StubIle +StubManager --> "+ StubFruitDuDemon" StubFruitDuDemon +StubManager --> "+ StubPersonnage" StubPersonnage +StubManager --> "+ StubEquipage" StubEquipage +StubManager --> "+ StubBateau" StubBateau +StubManager --> "+ StubBestiaire" StubBestiaire + +Manager --> "+ DataManager" IDataManager + +StubIle *--> "+ ile" Ile +StubFruitDuDemon *--> "+ fdd" FruitDuDemon +StubPersonnage *--> "+ perso" Personnage +StubEquipage *--> "+ Lequipage" Equipage +StubBateau *--> "+ bateau" Bateau +StubBestiaire *--> "+ best" Bestiaire + +@enduml +``` + +# Description du diagramme de classe en mettant en avant la partie persistance + +Nous avons fait la persistance ... + + + # Diagramme de paquetage ![logo](img/diagramme_paquetage.png) @@ -287,7 +498,10 @@ Dans le dossier Image on retrouve toutes les images concernant l'application (im Dans le dossier Styles on retrouve les Styles de notre application. -# Diagramme de séquence +# Diagramme de séquence + +## Serialization + ```plantuml @startuml @@ -301,11 +515,16 @@ collections Collections Utilisateur -> Front: Démarrage de l'application Front -> Serializer: Appel de la fonction de chargement Serializer -> Files: Récupération des données des fichiers +Files --> Serializer: Retour des données des fichiers Serializer -> Collections: Chargement des données dans les collections -Collections --> Front: Données utilisables par les vues +Collections --> Serializer: Retour des données des stubs +Serializer --> Front: Données utilisables par les vues @enduml ``` -# Description du diagramme de séquence \ No newline at end of file +## Description du diagramme de séquence de la Serialization + +Tout d'abord, l'utilisateur démarre l'application MAUI, ensuite le Front s'occupe d'appeler la fonction de chargement, puis le Serializer récupère les données dans les fichiers et charge les données dans des collections qui sont ensuite utilisables par les vues. +