Olmo - Arquitectura

En este capítulo, discutiremos la forma estándar de crear aplicaciones en la plataforma Elm. Elm usa un patrón arquitectónico similar al patrón Modelo-Vista-Controlador.

A continuación se muestran las cuatro partes principales de Elm Architecture.

  • Model
  • View
  • Message
  • Update

¿Cómo funciona la arquitectura de Elm?

los modelcontiene el estado de la aplicación. Por ejemplo, si una aplicación muestra una lista de clientes, el estado contendrá los datos de cada cliente. Para mostrar el estado de una manera presentable, unview/ html tiene que ser generado. Una vez que el usuario interactúa con la vista presionando un botón o escribiendo datos en un formulario, la vista genera señales llamadasmessages. Los mensajes se pasan alupdatemétodo, que evalúa los mensajes y toma las medidas adecuadas. Por lo tanto, el método de actualización generará un nuevo modelo.

El nuevo modelo genera una nueva vista. La vista dará lugar a nuevas interacciones del usuario para señalar mensajes, que pasa a la función de actualización. Además, la función crea un nuevo modelo. Entonces, el ciclo se repite como se muestra en el diagrama anterior.

Modelo

El modelo se ocupa del estado de la aplicación. La sintaxis para definir un modelo se da a continuación:

-- Model syntax

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

Para crear un modelo, primero debemos crear una plantilla con todas las propiedades requeridas. Cada propiedad especifica el estado de la aplicación.

Ver

La vista es una representación visual del estado de la aplicación. La Vista sabe cómo tomar datos y generar páginas web a partir de ellos. Cuando un usuario interactúa con la Vista, el usuario puede manipular el estado generando mensajes. La sintaxis para definir una Vista se da a continuación:

--View Syntax
view model =some_implementation

Mensaje

El mensaje es una solicitud del usuario para modificar el estado de la aplicación. Los mensajes se pasan como parámetro a la función de actualización.

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

La sintaxis muestra un tipo Mensaje. La aplicación elm editará el estado en función de los mensajes que se le envíen. Estas decisiones se toman en el método de actualización.

Actualizar

La función de actualización interpreta los mensajes, que se le pasan como parámetro, y actualiza el modelo.

--Update Syntax
update Message_type model =
   some_implementation

La función de actualización toma Message y modelo como parámetros.