SlideShare una empresa de Scribd logo
1 de 9
MVC (Model View Controller)



twitter: @trukuxzo
MVC (Model View Controller)
                                                       Maneja el comportamiento
                                                        y los datos del dominio de
Es un patrón de arquitectura                           la aplicación
de software que separa los
datos de una aplicación, la
                                               Model
interfaz de usuario y la
lógica de negocio en tres
componentes distintos o
capas conceptuales.
            Recibe datos del modelo     View
            y los muestra al usuario.                         Controller




                                               Recibe la entrada del usuario e
                                               inicia una respuesta haciendo
                                               llamadas a los objetos del modelo.
MVC (Model View Controller)...
• Originalmente fue implementado como un mapa tradicional
  de ingreso:
   – Ingreso de datos -> Proceso -> Salida de datos
   – Controlador      -> Modelo -> Vista

• No define exactamente las 3 capas clásicas de las
  arquitecturas 3-tier: Presentación, lógica de negocios y
  datos.

• En su lugar, define las responsabilidades y las dependencias
  dependiendo de los objetivos que representa en tres
  paradigmas: Modelo, Vista y Controlador.

• El patrón MVC se ve frecuentemente en aplicaciones web.
MVC - Model                                 Model



• Los objetos de modelo son las partes de la aplicación que
  implementan la lógica del dominio de datos de la aplicación.

• Representa a toda la información con la que opera la aplicación.

• Gestiona el comportamiento y los datos del dominio.

• Responde a las peticiones de información sobre el estado, que
  vienen de la Vista.

• Responde a instrucciones de cambio de estado, provenientes del
  Controlador.

• Interactúa con los repositorios (base de datos).
MVC - View                       View




• Las vistas son los componentes que muestra la
  interfaz de usuario de la aplicación.

• La vista gestiona la presentación de la información
  de la aplicación. Todo lo relativo a la interfaz de
  usuario, los datos de que dispone para seguir
  interactuando con la aplicación.

• Desde la interfaz gráfica a los estímulos que recibe
  del usuario, visual, auditiva o sensitivamente.
MVC - Controller                     Controller




• El controlador administra y responde a los datos
  proporcionados por el usuario y su interacción.

• Respuesta a eventos invocados desde la vista.

• Llama a la lógica de negocio para procesar y
  producir una respuesta.

• Interpreta las entradas del usuario, informando al
  modelo y/o a la vista de los cambios que supongan
  esas entradas.
Interacción MVC
Petición                  Proceso
            Controller                 Model




                         Interacción
                         View-Model



Respuesta        View
Ventajas
• Separa la manipulación de datos, la representación y el
  control de eventos, permitiendo un código mantenible.

• Decrementa la duplicación de código.

• Centraliza el control de datos.

• Facilita el mantenimiento y modificación de la aplicación.

• Ayuda a equipos de desarrollo en centrarse en áreas
  especificas.

• Mayor facilidad para añadir fuentes de datos y tipos de
  clientes.
Fin

Más contenido relacionado

La actualidad más candente

Trabajo Final
Trabajo FinalTrabajo Final
Trabajo Finalmariaalan
 
Unidad 1 MOOC MVC
Unidad 1 MOOC MVCUnidad 1 MOOC MVC
Unidad 1 MOOC MVCscolomina
 
Arquitectura aplicaciones clase2
Arquitectura aplicaciones clase2Arquitectura aplicaciones clase2
Arquitectura aplicaciones clase2Germania Rodriguez
 
Ejemplo de-informe-academico
Ejemplo de-informe-academicoEjemplo de-informe-academico
Ejemplo de-informe-academicoRonnyCoaquira
 
Arquitectura aplicaciones clase3
Arquitectura aplicaciones clase3Arquitectura aplicaciones clase3
Arquitectura aplicaciones clase3Germania Rodriguez
 
Arquitectura sistema
Arquitectura sistemaArquitectura sistema
Arquitectura sistemaOscar Eduardo
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 CapasFani Calle
 

La actualidad más candente (11)

Trabajo Final
Trabajo FinalTrabajo Final
Trabajo Final
 
Presentación1
Presentación1Presentación1
Presentación1
 
Unidad 1 MOOC MVC
Unidad 1 MOOC MVCUnidad 1 MOOC MVC
Unidad 1 MOOC MVC
 
Arquitectura aplicaciones clase2
Arquitectura aplicaciones clase2Arquitectura aplicaciones clase2
Arquitectura aplicaciones clase2
 
Ejemplo de-informe-academico
Ejemplo de-informe-academicoEjemplo de-informe-academico
Ejemplo de-informe-academico
 
Arquitectura aplicaciones clase3
Arquitectura aplicaciones clase3Arquitectura aplicaciones clase3
Arquitectura aplicaciones clase3
 
Arquitectura sistema
Arquitectura sistemaArquitectura sistema
Arquitectura sistema
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 Capas
 
Arquitectura de software
Arquitectura de softwareArquitectura de software
Arquitectura de software
 
Analisis requisito expo desa
Analisis requisito expo desaAnalisis requisito expo desa
Analisis requisito expo desa
 
Presentacion_proyecto
Presentacion_proyectoPresentacion_proyecto
Presentacion_proyecto
 

Destacado (6)

MVVM
MVVMMVVM
MVVM
 
MVC Seminar Presantation
MVC Seminar PresantationMVC Seminar Presantation
MVC Seminar Presantation
 
Why Use MVC?
Why Use MVC?Why Use MVC?
Why Use MVC?
 
Why MVC?
Why MVC?Why MVC?
Why MVC?
 
Model View Controller (MVC)
Model View Controller (MVC)Model View Controller (MVC)
Model View Controller (MVC)
 
ASP.NET MVC Presentation
ASP.NET MVC PresentationASP.NET MVC Presentation
ASP.NET MVC Presentation
 

Similar a MVC-ModeloVistaControlador

Similar a MVC-ModeloVistaControlador (20)

Modelo vista controlador
Modelo vista controladorModelo vista controlador
Modelo vista controlador
 
Modelo vistacontrolador
Modelo vistacontroladorModelo vistacontrolador
Modelo vistacontrolador
 
Lp II clase02 - Modelo Vista Controlador
Lp II   clase02 - Modelo Vista ControladorLp II   clase02 - Modelo Vista Controlador
Lp II clase02 - Modelo Vista Controlador
 
Mvc
MvcMvc
Mvc
 
Modelo, vista, controlador
Modelo, vista, controladorModelo, vista, controlador
Modelo, vista, controlador
 
Patrón MVC
Patrón MVCPatrón MVC
Patrón MVC
 
Arquitectura Cliente-Servidor
Arquitectura Cliente-ServidorArquitectura Cliente-Servidor
Arquitectura Cliente-Servidor
 
Modelo vista controlador
Modelo vista controladorModelo vista controlador
Modelo vista controlador
 
Patron mvc struts
Patron mvc strutsPatron mvc struts
Patron mvc struts
 
Frameworks MVC para desarrollo de UITES
Frameworks MVC para desarrollo de UITESFrameworks MVC para desarrollo de UITES
Frameworks MVC para desarrollo de UITES
 
Struts en Java
Struts en JavaStruts en Java
Struts en Java
 
Asp
AspAsp
Asp
 
S8 arely medina_power_point
S8 arely medina_power_pointS8 arely medina_power_point
S8 arely medina_power_point
 
ASP.NET
ASP.NETASP.NET
ASP.NET
 
Clase 10 mvc
Clase 10 mvcClase 10 mvc
Clase 10 mvc
 
MVC
MVCMVC
MVC
 
MVC
MVCMVC
MVC
 
Programacion 3 mvc
Programacion 3 mvcProgramacion 3 mvc
Programacion 3 mvc
 
Modelo Vista Controlador.pdf
Modelo Vista Controlador.pdfModelo Vista Controlador.pdf
Modelo Vista Controlador.pdf
 
U2-tema1.pdf
U2-tema1.pdfU2-tema1.pdf
U2-tema1.pdf
 

Más de Senior Dev

DDD (Domain-Driven Design)
DDD (Domain-Driven Design)DDD (Domain-Driven Design)
DDD (Domain-Driven Design)Senior Dev
 
TDD (Test-Driven Development)
TDD (Test-Driven Development)TDD (Test-Driven Development)
TDD (Test-Driven Development)Senior Dev
 
Message Queuing (MSMQ)
Message Queuing (MSMQ)Message Queuing (MSMQ)
Message Queuing (MSMQ)Senior Dev
 
Teoría de colas
Teoría de colasTeoría de colas
Teoría de colasSenior Dev
 
JSON - (English)
JSON - (English)JSON - (English)
JSON - (English)Senior Dev
 
MVC & ASP.NET (Spanish)
MVC & ASP.NET (Spanish)MVC & ASP.NET (Spanish)
MVC & ASP.NET (Spanish)Senior Dev
 

Más de Senior Dev (7)

Scrum
ScrumScrum
Scrum
 
DDD (Domain-Driven Design)
DDD (Domain-Driven Design)DDD (Domain-Driven Design)
DDD (Domain-Driven Design)
 
TDD (Test-Driven Development)
TDD (Test-Driven Development)TDD (Test-Driven Development)
TDD (Test-Driven Development)
 
Message Queuing (MSMQ)
Message Queuing (MSMQ)Message Queuing (MSMQ)
Message Queuing (MSMQ)
 
Teoría de colas
Teoría de colasTeoría de colas
Teoría de colas
 
JSON - (English)
JSON - (English)JSON - (English)
JSON - (English)
 
MVC & ASP.NET (Spanish)
MVC & ASP.NET (Spanish)MVC & ASP.NET (Spanish)
MVC & ASP.NET (Spanish)
 

Último

EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 

Último (13)

EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 

MVC-ModeloVistaControlador

  • 1. MVC (Model View Controller) twitter: @trukuxzo
  • 2. MVC (Model View Controller) Maneja el comportamiento y los datos del dominio de Es un patrón de arquitectura la aplicación de software que separa los datos de una aplicación, la Model interfaz de usuario y la lógica de negocio en tres componentes distintos o capas conceptuales. Recibe datos del modelo View y los muestra al usuario. Controller Recibe la entrada del usuario e inicia una respuesta haciendo llamadas a los objetos del modelo.
  • 3. MVC (Model View Controller)... • Originalmente fue implementado como un mapa tradicional de ingreso: – Ingreso de datos -> Proceso -> Salida de datos – Controlador -> Modelo -> Vista • No define exactamente las 3 capas clásicas de las arquitecturas 3-tier: Presentación, lógica de negocios y datos. • En su lugar, define las responsabilidades y las dependencias dependiendo de los objetivos que representa en tres paradigmas: Modelo, Vista y Controlador. • El patrón MVC se ve frecuentemente en aplicaciones web.
  • 4. MVC - Model Model • Los objetos de modelo son las partes de la aplicación que implementan la lógica del dominio de datos de la aplicación. • Representa a toda la información con la que opera la aplicación. • Gestiona el comportamiento y los datos del dominio. • Responde a las peticiones de información sobre el estado, que vienen de la Vista. • Responde a instrucciones de cambio de estado, provenientes del Controlador. • Interactúa con los repositorios (base de datos).
  • 5. MVC - View View • Las vistas son los componentes que muestra la interfaz de usuario de la aplicación. • La vista gestiona la presentación de la información de la aplicación. Todo lo relativo a la interfaz de usuario, los datos de que dispone para seguir interactuando con la aplicación. • Desde la interfaz gráfica a los estímulos que recibe del usuario, visual, auditiva o sensitivamente.
  • 6. MVC - Controller Controller • El controlador administra y responde a los datos proporcionados por el usuario y su interacción. • Respuesta a eventos invocados desde la vista. • Llama a la lógica de negocio para procesar y producir una respuesta. • Interpreta las entradas del usuario, informando al modelo y/o a la vista de los cambios que supongan esas entradas.
  • 7. Interacción MVC Petición Proceso Controller Model Interacción View-Model Respuesta View
  • 8. Ventajas • Separa la manipulación de datos, la representación y el control de eventos, permitiendo un código mantenible. • Decrementa la duplicación de código. • Centraliza el control de datos. • Facilita el mantenimiento y modificación de la aplicación. • Ayuda a equipos de desarrollo en centrarse en áreas especificas. • Mayor facilidad para añadir fuentes de datos y tipos de clientes.
  • 9. Fin

Notas del editor

  1. Modelos. Los objetos de modelo son las partes de la aplicación que implementan la lógica del dominio de datos de la aplicación. A menudo, los objetos de modelo recuperan y almacenan el estado del modelo en una base de datos. Por ejemplo, un objeto Product podría recuperar información de una base de datos, trabajar con ella y, a continuación, escribir la información actualizada en una tabla Productos de una base de datos de SQL Server. En las aplicaciones pequeñas, el modelo es a menudo una separación conceptual en lugar de física. Por ejemplo, si la aplicación solo lee un conjunto de datos y lo envía a la vista, la aplicación no tiene un nivel de modelo físico y las clases asociadas. En ese caso, el conjunto de datos asume el rol de un objeto de modelo.Vistas. Las vistas son los componentes que muestra la interfaz de usuario de la aplicación. Normalmente, esta interfaz de usuario se crea a partir de los datos de modelo. Un ejemplo sería una vista de edición de una tabla Productos que muestra cuadros de texto, listas desplegables y casillas basándose en el estado actual de un objeto Product.Controladores. Los controladores son los componentes que controlan la interacción del usuario, trabajan con el modelo y por último seleccionan una vista para representar la interfaz de usuario. En una aplicación MVC, la vista solo muestra información; el controlador administra y responde a los datos proporcionados por el usuario y su interacción. Por ejemplo, el controlador administra los valores de la cadena de consulta y pasa estos valores al modelo, que a su vez podría utilizarlos para consultar la base de datos.