You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
259 lines
7.6 KiB
259 lines
7.6 KiB
# Diagramme de classe
|
|
```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<Personnage> 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()
|
|
+ List<FruitDuDemon> FiltrerFDD(string type)
|
|
+ List<FruitDuDemon> RechercherFDD(string text, List<FruitDuDemon> listeFDD)
|
|
+ List<ObjetOhara> GetFavoris()
|
|
+ void AddBateauFavoris(Bateau bateau)
|
|
}
|
|
|
|
Class StubManager {
|
|
+ StubPersonnage StubPersonnage
|
|
+ StubFruitDuDemon StubFruitDuDemon
|
|
+ StubEquipage StubEquipage
|
|
+ StubBateau StubBateau
|
|
+ StubBestiaire StubBestiaire
|
|
+ StubIle StubIle
|
|
+ StubManager()
|
|
+ IEnumerable<Personnage> GetPersonnages()
|
|
+ IEnumerable<FruitDuDemon> GetFruits()
|
|
+ IEnumerable<Equipage> GetEquipages()
|
|
+ IEnumerable<Bateau> GetBateaux()
|
|
+ IEnumerable<Bestiaire> GetBestiaires()
|
|
+ IEnumerable<Ile> GetIles()
|
|
}
|
|
|
|
Class StubBateau {
|
|
+ IEnumerable<Bateau> RecupererBateau()
|
|
}
|
|
|
|
Class StubBestiaire {
|
|
+ IEnumerable<Bestiaire> RecupererBestiaire()
|
|
}
|
|
|
|
Class StubEquipage {
|
|
+ IEnumerable<Equipage> RecupererEquipage()
|
|
}
|
|
|
|
Class StubFruitDuDemon {
|
|
+ IEnumerable<FruitDuDemon> RecupererFruitDuDemon()
|
|
}
|
|
|
|
Class StubIle {
|
|
+ IEnumerable<Ile> RecupererIle()
|
|
}
|
|
|
|
Class StubPersonnage {
|
|
+ IEnumerable<Personnage> 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
|
|
|
|
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.
|
|
|
|
Il possède aussi 6 stubs + le stub manager :
|
|
|
|
-StubBateau
|
|
-StubBestiaire
|
|
-StubEquipage
|
|
-StubFruitDuDemon
|
|
-StubIle
|
|
-StubPersonnage
|
|
-StubManager
|
|
|
|
Les Stubs sont reliés à chacunes des classes auxquelles ils correspondent
|
|
|
|
Il regroupe aussi :
|
|
|
|
-le Manager
|
|
-IDataManager
|
|
-Serializer
|
|
|
|
|
|
|
|
Ce diagramme de classe représente la structure de notre application.
|
|
|
|
|
|
|
|
|
|
|
|
# Diagramme de paquetage
|
|
|
|

|
|
|
|
# Description du diagramme de paquetage
|
|
|
|
Le diagramme de paquetage regroupe nos 4 solutions, le Model, le TestProject, le TestUnitaire et Ohara(vue).
|
|
|
|
A l'intérieur du Model nous avons regroupé tous les fichiersdans différents dossier pour pouvoir améliorer la visibilité de notre projet et pour ne pas se perdre dans les fichiers. On peut retrouver les dossier suivants :
|
|
|
|
-Classes : Ici retrouve toutes les classes de notre application,
|
|
-Stub : Ici on retrouve tout ce qui est lié au Stub de notre application,
|
|
-Managers : Ici on retrouve le IDataManager et le Manager,
|
|
-Serializer : Ici on retrouve tout ce qui est lié par rapport à la serialization.
|
|
|
|
Pour continuer dans notre vue il y a le dossier Ressources qui regroupe les dossiers Styles et Images.
|
|
|
|
Dans le dossier Image on retrouve toutes les images concernant l'application (images de personnages, logo, diagramme de paquetage, etc...).
|
|
|
|
Dans le dossier Styles on retrouve les Styles de notre application. |