Olmo - Architettura

In questo capitolo, discuteremo il modo standard per creare applicazioni nella piattaforma Elm. Elm utilizza un pattern architettonico simile al pattern Model-View-Controller.

Di seguito sono riportate le quattro parti principali di Elm Architecture.

  • Model
  • View
  • Message
  • Update

Come funziona l'architettura Elm

Il modelcontiene lo stato dell'applicazione. Ad esempio, se un'applicazione visualizza un elenco di clienti, lo stato conterrà i dati di ciascun cliente. Per visualizzare lo stato in modo presentabile, aview/ html deve essere generato. Una volta che l'utente interagisce con la vista premendo un pulsante o digitando i dati in un modulo, la vista genera segnali chiamatimessages. I messaggi vengono passati al fileupdatemetodo, che valuta i messaggi e intraprende le azioni appropriate. Pertanto, il metodo di aggiornamento genererà un nuovo modello.

Il nuovo modello genera una nuova vista. La visualizzazione porterà a nuove interazioni da parte dell'utente ai messaggi di segnalazione, che va alla funzione di aggiornamento. Inoltre, la funzione crea un nuovo modello. Quindi, il ciclo si ripete come mostrato nel diagramma sopra.

Modello

Il modello si occupa dello stato dell'applicazione. La sintassi per la definizione di un modello è fornita di seguito:

-- Model syntax

type alias Model = {
   property1:datatype,
   proptery2:datatype
...
}

Per creare un modello, dobbiamo prima creare un modello con tutte le proprietà richieste al suo interno. Ogni proprietà specifica lo stato dell'applicazione.

Visualizza

La vista è una rappresentazione visiva dello stato dell'applicazione. The View sa come estrarre dati e generare pagine web da essi. Quando un utente interagisce con la vista, può manipolare lo stato generando messaggi. Di seguito viene fornita la sintassi per la definizione di una vista:

--View Syntax
view model =some_implementation

Messaggio

Il messaggio è una richiesta dell'utente per modificare lo stato dell'applicazione. I messaggi vengono passati come parametri alla funzione di aggiornamento.

--Message Syntax
type Message = Message1 |Message2 ...

La sintassi mostra un tipo Message. L'applicazione elm modificherà lo stato in base ai messaggi ad essa passati. Queste decisioni vengono prese nel metodo di aggiornamento.

Aggiornare

La funzione di aggiornamento interpreta i messaggi, che le vengono passati come parametro, e aggiorna il modello.

--Update Syntax
update Message_type model =
   some_implementation

La funzione di aggiornamento richiede Message e Modello come parametri.