diff --git a/docs/src/04-design/index.md b/docs/src/04-design/index.md index 531dff6..50c268d 100644 --- a/docs/src/04-design/index.md +++ b/docs/src/04-design/index.md @@ -42,10 +42,6 @@ Il Mixin `ScalaJSView` infatti si occupa di gestire le funzionalità di _show_ e Inoltre la `ScalaJSView` espone anche uno stato reattivo che può essere utilizzato nelle varie View e viene tenuto sempre aggiornato ad ogni modifica propagata dal controller. Questo ha reso molto semplice lo sviluppo delle pagine, in quanto tutto quello mostrato graficamente è dipendente dallo stato reattivo. -#### ViewModel - -Per la gestione di tutti i mapping da stato dell'applicazione a singola informazione, è stato creato il concetto di ViewModel, che consiste in un wrapper dello stato reattivo dell'applicazione e che tramite operations su di esso espone tutti i vari metodi per ottenere le informazioni dipendenti dallo stato. - ### Application ![Architettura Application](../img/04-design/mvc/mvc-app.jpg) @@ -192,11 +188,7 @@ A questo punto una volta definito il dominio del gioco si è andato a definire u -## Model - -### Game - -### Map +## Map L'analisi del dominio ha portato alla schematizzazione della mappa di gioco, con i seguenti elementi: @@ -261,8 +253,6 @@ Perciò è possibile definire delle `TileContentStrategy` che permette di modifi ![TileContent](../img/04-design/gamemap/creation.jpg) -### Components - ## View La View, come precedentemente introdotto, permette all'utente di visualizzare lo stato dell'applicazione in modo reattivo, e consentire l'interazione con il sistema. @@ -272,6 +262,10 @@ A fronte di ciò, è stato scelto di utilizzare un approccio a componenti per la Inoltre, l'approccio a componenti, permette il riutilizzo del codice in sezioni diverse dell'applicazione. +### ViewModel + +Per la gestione di tutti i mapping da stato dell'applicazione a singola informazione, è stato creato il concetto di ViewModel, che consiste in un wrapper dello stato reattivo dell'applicazione e che tramite operations su di esso espone tutti i vari metodi per ottenere le informazioni dipendenti dallo stato. + ### Context Map e Anti Corruption Layer L'obiettivo della view di mostrare lo stato del model in modo reattivo contempla la necessità di tradurre le informazioni contenute nel model in elementi grafici, significativi per l'utente. @@ -284,8 +278,6 @@ Questo meccanismo funge anche da `Anti Corruption Layer`, in quanto permette di ![Context Map](../img/04-design/view/context-map.jpg) -### ViewModel - ## Stato della partita