1. Ing. Angel R. Condori Coaquira
angeldx7@hotmail.com
http://www.juliacasoft.com
Clase Nro. 2
2. MVC
• El patrón MVC es una arquitectura de diseño
software para separar los componentes de
aplicación en tres niveles, interfaz de usuario,
lógica de control y lógica de negocio.
• Es una especialización de un modelo de capas, con
la diferencia que se usa para entornos web como
patrón por excelencia. Ejemplo: Struts, Spring,
Asp.NET MVC... Etc.
3.
4.
5.
6.
7. Dependencias
• Tanto la vista como el controlador dependen del
modelo. Sin embargo, el modelo no depende ni de la
vista ni del controlador.
• La separación permite que el modelo sea construido y
probado independientemente de la presentación visual.
• La separación entre vista y controlador es secundaria
en muchas aplicaciones, sin embargo en las
aplicaciones Web la vista (el navegador) y el
controlador (los componentes del lado servidor) están
bien definidos.
11. Multicapas:
• Centralización de los aspectos de seguridad y
transaccionalidad, que serían responsabilidad del modelo.
• No replicación de lógica de negocio en los clientes: esto
permite que las modificaciones y mejoras sean
automáticamente aprovechadas por el conjunto de los
usuarios, reduciendo los costes de mantenimiento.
• Mayor sencillez de los clientes.
MVC:
• El modelo, que contiene la lógica de negocio de la aplicación
• La vista, que muestra al usuario la información que éste
necesita.
• El controlador, que recibe e interpreta la interacción del
usuario, actuando sobre modelo y vista de manera adecuada
para provocar cambios de estado en la representación
interna de los datos, así como en su visualización.
12. RESPONSABILIDADESDECAPAS EN
MVC
• Modelo: Es la capa encargada de encapsular toda la lógica de negocio de nuestra
aplicación. Esta capa se puede subdividir en varias:
• Lógica de negocio: Contiene clases o varias para constituir lo referente a la capa
de aplicación, se encarga de atender a las peticiones de los controladores y así dar
una respuesta acorde con lo recibido.
• Capa de datos: Se encarga de gestionar toda la interconexión con el SGBD, así
mismo, puede contener un gestor ORM para su aprovechamiento máximo y mejor
mantenimiento. Solo se comunica con la lógica de negocio.
• Helpers: Llamados “ayudantes” apoyan tanto al controlador como a la vista para
hacer más livianas algunas tareas.
• Controlador: Es el eje central de nuestra arquitectura, encargada de gestionar
todas las peticiones, validar los inputs recibidos y dirigir cualquier petición de
cualquier tipo. Solo se comunica con el modelo y responde a través de vistas.
• Vista: Es la respuesta de cada controlador y lo que se le presenta al usuario final,
se puede comunicar con el controlador, los “helpers” y el modelo (en algunas
ocasiones).
13. FRAMEWORKS
• Existen multitud de Frameworksque implementan la
arquitectura ya definida, lo único que el usuario
debe hacer es preocuparse de implementar la
lógica de la aplicación y montar las piezas del
puzzle. Un listado de Frameworksson:
• http://es.wikipedia.org/wiki/Modelo_Vista_Controlad
or#Frameworks_MVC