martes, 25 de septiembre de 2012

Modelo Vista Controlador

¿Qué es y en que consiste?


En casi cualquier programa que hagamos podemos encontrar tres partes bien diferenciadas:


  • Por un lado tenemos el problema que tratamos de resolver. Este problema suele ser independiente de cómo queramos que nuestro programa recoja los resultados o cómo queremos que los presente. En este caso queremos hacer un un sistema que facilite la importación y exportación, todas las reglas arancelarias son totalmente independientes de si vamos a crear la plataforma, con figuras o elementos tradicionales así como elementos más estilizados. Este código constituiría el modelo. En el software el modelo podría ser una clase (o conjunto de clases) que mantengan una serie de formularios, que permita cotizar precios de productos verificando que sea correcto, que detecte datos, etc. 
  • Otra parte clara es la presentación visual que queramos hacer del software. En este caso serían las posibles interfaces gráficas mencionados en el punto anterior. Esta parte del código es la vista. Se llamará interface gráfica por ser lo más común, pero podría ser de texto, de comunicaciones con otro programa externo, con la impresora, etc. Aquí tendríamos, la ventana web que muestra formularios, login, registro, que permiten cotizar, registrarte, etc. 
  • La tercera parte de código es aquel código que toma decisiones, algoritmos, etc. Es código que no tiene que ver con las ventanas visuales ni con las reglas de nuestro modelo. Esta parte del código es el controlador.

Diagrama de Procesos

En este caso se ha decidido que se van a desarrollar tres librerías/paquetes/módulos, una para la interface de usuario, otra para contener la plataforma y reglas (reglas arancelarias, valores ydatos válidos) y otra para el algoritmo la lógica arancelaria. Se ha utilizado una clase representando cada uno de los paquetes y se ha representado el caso de uso "cotizar".

En el diagrama de secuencia no se ponen situaciones erróneas (valores inválidos, respuestas de validación, etc.) puesto que poner todos los detalles puede dar lugar a un diagrama que no se entiende o difícil de leer.

No hay comentarios:

Publicar un comentario