Discusión sobre el artículo "Plantilla para proyectar el MVC y posibilidades de uso"

 

Artículo publicado Plantilla para proyectar el MVC y posibilidades de uso:

En el artículo, analizaremos una plantilla de MVC bastante extendida. Asimismo, estudiaremos sus posibilidades y las ventajas y desventajas de su uso en los programas MQL. Su esencia consiste en "dividir" el código existente en tres componentes separados: Modelo (Model), Vista (View) y Controlador (Controller).

En este artículo, nos interesará el "MVC clásico", sin complicaciones y con funcionalidad adicional. Su esencia consiste en "dividir" el código existente en tres componentes separados: Modelo (Model), Vista (View) y Controlador (Controller). La esencia de la plantilla MVC consiste en que estos tres componentes pueden desarrollarse y acompañarse entre sí de forma independiente. Un grupo aparte de desarrolladores puede trabajar en cada componente, para lanzar así nuevas versiones y eliminar errores. Está claro que, en este caso, se hace mucho más sencillo trabajar en un proyecto común, a la vez que podemos estudiar la información de otros de forma más rápida y más fácil.

Vamos a analizar lo que supone cada componente por separado.

  1. Vista (View). La vista es responsable de la representación visual. En un caso más general, se encarga de enviar datos al usuario. Debemos tener en cuenta que en realidad los métodos de representación de datos pueden ser varios. Por ejemplo, los datos pueden visualizarse como un recuadro, un gráfico o diagrama al mismo tiempo. En otras palabras, dentro de una sola aplicación construida según el esquema MVC, puede haber varias Vistas. Las Vistas reciben datos del Modelo sin tener idea de lo está sucediendo dentro del mismo.
  2. Modelo (Model). El modelo contiene los datos. Asimismo, establece la comunicación con las bases de datos, envía las solicitudes a la red y a otras fuentes. Además, modifica los datos, los registra, los guarda y los elimina. El modelo no sabe nada sobre el funcionamiento de la Vista ni cuántas Vistas están disponibles, pero dispone de las interfaces necesarias sobre las que las Vistas pueden solicitar datos. Las Vistas no pueden hacer nada más: no pueden obligar al Modelo a cambiar su estado. De esto se encraga el Controlador. De forma interna, el Modelo puede constar de varios otros modelos alineados en una jerarquía o funcionando por igual. En este sentido, el Modelo no impone restricciones, excepto la ya mencionada: el Modelo mantiene su dispositivo interno en secreto respecto a la Vista y el Controlador.
  3. Controlador (Controller). El Controlador hace posible la conexión entre el usuario y el Modelo. El Controlador no sabe lo que el modelo hace con los datos, pero puede decirle al Modelo que ha llegado el momento de actualizar el contenido. En general, el Controlador, según su interfaz, trabaja con el Modelo sin intentar entender lo que está sucediendo en su interior.

Visualmente, la conexión entre los componentes individuales de la plantilla de MVC se ve así:

Autor: Andrei Novichkov