Nantes Université

Skip to content
Extraits de code Groupes Projets
Valider f3828a0e rédigé par Malo Grall's avatar Malo Grall
Parcourir les fichiers

Restructured diagram files + Separated interfaces + Added todo

parent aa05ac3c
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
Pipeline #55859 réussi
= Spécification des composants
== Interfaces Client, Serveur, Middlewares et leurs liens
== Relations et interfaces des composants
=== Relation et interfaces côté Serveur
*TODO*
=== Relation et interfaces côté Client
*TODO*
=== Relation et interfaces des cartes
[plantuml, create-card-stacks, svg]
....
include::../partials/interfaces-diagrams/server-interface.puml[]
....
=== Relation et interfaces de tous les composants
[plantuml, create-card-stacks, svg]
....
include::../partials/server-interface.puml[]
include::../partials/interfaces-diagrams/server-interface.puml[]
....
== Responsabilités des composants
......@@ -27,19 +39,60 @@ Orchestrateur du jeu `7 Wonders` et des joueurs
=== Player
Classe permettant de traiter les données relatives aux joueurs
=== PlayerPublic
*TODO*
=== Game
Classe permettant de traiter les données relatives à une partie du jeu `7 Wonders`
=== GamePublic
*TODO*
=== Card
*TODO*
=== Wonder
*TODO*
=== Effect
*TODO*
=== Age
*TODO*
=== Action
*TODO*
=== GameState
*TODO*
=== Resource
*TODO*
== Diagrammes de séquences
=== Connexion au serveurs de 2 joueurs
[plantuml, connect-sequence-diagram, svg]
....
include::../partials/connect-sequence-diagram.puml[]
include::../partials/sequences-diagrams/connect-sequence-diagram.puml[]
....
=== 2 joueurs rejoignent la partie
[plantuml, join-sequence-diagram, svg]
....
include::../partials/join-sequence-diagram.puml[]
include::../partials/sequences-diagrams/join-sequence-diagram.puml[]
....
=== Début d'une partie avec distribution des premières mains de cartes aux joueurs
.Seul le côté serveur est représenté
[plantuml, distribute-sequence-diagram, svg]
....
include::../partials/sequences-diagrams/distribute-sequence-diagram.puml[]
....
=== Plusieurs joueurs jouent leur carte et le serveur
.Seul le côté serveur est représenté et ses actions en conséquence On omet l'appel et l'exécution de l'action de la `Card`
[plantuml, choose-card-sequence-diagram, svg]
....
include::../partials/sequences-diagrams/choose-card-sequence-diagram.puml[]
....
\ No newline at end of file
......@@ -65,7 +65,6 @@ interface Server {
+ getGameState (): GameState
' Return if action valid
+ playCard(String playerId, Card card, Action action): boolean
' Resources have to be bought from neighbors (PlayerID, Resource, Quantity)
+ playCard(String playerId, Card card, Action action, List<Triplet<String, Resource, int>> buyFromNeighbors): boolean
......@@ -154,7 +153,7 @@ interface PlayerPublic {
- List<Card> builtCards
'Methods
+ constructor(): PlayerPublic
+ <<create>> PlayerPublic(): PlayerPublic
}
......@@ -226,7 +225,12 @@ enum Resource {
PAPYRUS
}
interface Card
interface Card {
- Game game
+ <<create>> Card(Game game)
+ doAction() : void
}
Client -- ClientMiddleware
......
@startuml
interface Client
interface ClientMiddleware
interface ServerMiddleware
interface Server
interface GamePublic
interface Game extends GamePublic
interface PlayerPublic
interface Player extends PlayerPublic
interface Wonder
interface Card
Client -- ClientMiddleware
ClientMiddleware .. ServerMiddleware
ServerMiddleware -- Server
PlayerPublic -- Wonder
PlayerPublic -- Card
GamePublic -- Card
GamePublic -- PlayerPublic
Game -- Server
@enduml
\ No newline at end of file
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter