Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

MVC

Descargar como pptx, pdf o txt
Descargar como pptx, pdf o txt
Está en la página 1de 14

MVC

MVC, son las siglas de modelo-vista-controlador (o en inglés, model-view-


controller), que es uno de los tantos patrones de arquitectura de software.

“la Arquitectura de Software es la forma en la que se organizan los


componentes de un sistema, interactúan y se relacionan entre sí y con el
contexto, aplicando normas y principios de diseño y calidad, que
fortalezcan y fomenten la usabilidad a la vez que dejan preparado el
sistema, para su propia evolución”.
Características de la Arquitectura de SW

La Calidad del Software puede definirse como los atributos implícitamente


requeridos en un sistema que deben ser satisfechos. Cuando estos atributos
son satisfechos, puede decirse (aunque en forma objetable), que la calidad
del software es satisfactoria.
Atributos de calidad que pueden observarse durante la ejecución del
software:

1. Disponibilidad de uso

2. Confidencialidad, puesto que se debe evitar el acceso no autorizado al


sistema

3. Cumplimiento de la Funcionalidad requerida

4. Desempeño del sistema con respecto a factores tales como la capacidad


de respuesta

5. Confiabilidad dada por la constancia operativa y permanente del sistema

6. Seguridad externa evitando la pérdida de información debido a errores


del sistema

7. Seguridad interna siendo capaz de impedir ataques, usos no autorizados,


etc.
Atributos de calidad inherentes al proceso de desarrollo del software:

8. Capacidad de Configurabilidad que el sistema otorga al usuario a fin de


realizar ciertos cambios
9. Integrabilidad de los módulos independientes del sistema
10. Integridad de la información asociada
11.Capacidad de Interoperar con otros sistemas (interoperabilidad)
12.Capacidad de permitir ser Modificable a futuro (modificabilidad)
13.Ser fácilmente Mantenible (mantenibilidad)
14.Capacidad de Portabilidad, es decir que pueda ser ejecutado en diversos
ambientes tanto de software como de hardware
15.Tener una estructura que facilite la Reusabilidad de la misma en futuros
sistemas
16.Mantener un diseño arquitectónico Escalable que permita su ampliación
(escalabilidad)
17.Facilidad de ser Sometido a Pruebas que aseguren que el sistema falla
cuando es lo que se espera (testeabilidad)
• El Estilo Arquitectónico es el encargado de:

◦ Describir la estructura general de un sistema, independientemente de otros


estilos
◦ Definir los componentes del sistema, su relación e interactividad
◦ Ejemplos : flujo de datos, llamada y retorno, etc.

• El Patrón Arquitectónico es el nivel en el cual la arquitectura de software:


◦ Define la estructura básica de un sistema, pudiendo estar relacionado con
otros patrones
◦ Representa una plantilla de construcción que provee un conjunto de
subsistemas aportando las normas para su organización
◦ Ejemplos : Capas, MVC, Tuberías y Filtros, Pizarra, etc.

• El Patrón de Diseño es el tercer nivel de abstracción de la arquitectura de


software, cuya finalidad es la de precisar en detalle los subsistemas y
componentes de la aplicación
◦ Ejemplos : Proxy, Command, Factory, etc..
¿Qué es el patrón MVC?

El patrón MVC es un patrón de arquitectura de software encargado de


separar la lógica de negocio de la interfaz del usuario y es el más utilizado
en aplicaciones Web, ya que facilita la funcionalidad, mantenibilidad y
escalabilidad del sistema, de forma simple y sencilla, a la vez que permite
“no mezclar lenguajes de programación en el mismo código”.
MVC divide las aplicaciones en tres niveles de abstracción:

• Modelo: representa la lógica de negocios. Es el encargado de accesar de


forma directa a los datos actuando como “intermediario” con la base de
datos. Lo que en nuestro ejemplo de programación orientada a objetos,
serían las clases DBAbstractModel y Usuario.

• Vista: es la encargada de mostrar la información al usuario de forma gráfica


y “humanamente legible”.

• Controlador: es el intermediario entre la vista y el modelo. Es quien


controla las interacciones del usuario solicitando los datos al modelo y
entregándolos a la vista para que ésta, lo presente al usuario, de forma
“humanamente legible”.
¿Cómo funciona el patrón MVC?
¿Cómo funciona el patrón MVC?

El funcionamiento básico del patrón MVC, puede resumirse en:

• El usuario realiza una petición

• El controlador captura el evento (puede hacerlo mediante un manejador


de eventos – handler -, por ejemplo)

• Hace la llamada al modelo/modelos correspondientes (por ejemplo,


mediante una llamada de retorno – callback -) efectuando las modificaciones
pertinentes sobre el modelo

• El modelo será el encargado de interactuar con la base de datos, ya sea


en forma directa, con una capa de abstracción para ello, un Web Service,
etc. Y retornará esta información al controlador.
¿Cómo funciona el patrón MVC?

El funcionamiento básico del patrón MVC, puede resumirse en:

• El controlador recibe la información y la envía a la vista

• La vista, procesa esta información pudiendo hacerlo desde el enfoque que


veremos en este libro, creando una capa de abstracción para la lógica (quien
se encargará de procesar los datos) y otra para el diseño de la interfaz gráfica
o GUI.

La lógica de la vista, una vez procesados los datos, los “acomodará” en


base al diseño de la GUI - layout – y los entregará al usuario de forma
“humanamente legible”.
La vista

Como hemos visto anteriormente, la vista representa la interfaz gráfica del


usuario (GUI), es decir, es la encargada de mostrar la información al usuario
de manera “humanamente legible”.
A tal fin, dividiremos la vista en dos sub-capas: la GUI propiamente dicha y su
lógica.

Generalmente, en la práctica, no somos los programadores quienes nos


hemos de encargar de la GUI. Es tarea que corresponde a diseñadores Web o
gráficos, según aplique.

Como “arquitectos”, debemos tener preparada la estructura de nuestra


aplicación, para que diseñadores puedan trabajar libremente en la GUI, sin
tener que acceder al código PHP.
La vista

En principio, la parte gráfica de las vistas (archivos HTML, imágenes, CSS,


etc.), deberá tener un directorio reservado solo para ella. De esta forma,
obtenemos varias ventajas de trabajar con el patrón MVC:

• Los archivos estáticos (HTML, CSS, imágenes e incluso JavaScript) pueden


almacenarse en un servidor independiente con todos los beneficios que
esto conlleva (al igual que sucede con las bases de datos, los archivos
estáticos también pueden independizarse)

• Nos aseguramos de que el código estático (aquel desarrollado por


diseñadores), no “rompa” el núcleo de la aplicación

• Permitimos a los diseñadores trabajar cómodamente en la libertad de


aplicar todos los conocimientos y herramientas inherentes a su área de
conocimiento, sin la presión de tener que implementar un lenguaje de
programación que desconocen, les es poco familiar o simplemente, la
herramienta que utilizan para diseñar, suele dañarles el código no-estático.
El controlador

El controlador, aunque muchos de ustedes no lo crean, es quien tal vez, lleva


“la peor parte”. En muchas ocasiones, es complicado programar el
controlador de manera previsible para que pueda evolucionar, y
generalmente, es sometido a refactorizaciones constantes, incluso mayores
que las que puede sufrir el modelo.

Recordemos que el controlador, es quien debe interactuar con el modelo y


con la vista. Para hacerlo, deberá previamente reconocer y manejar los
distintos eventos del usuario, para saber:

1. A qué modelo / modelos invocar


2. Qué y cuáles propiedades o atributos del modelo/modelos modificar o
parámetros deberá entregar a sus métodos
3. A qué vista entregar la información

También podría gustarte