UNET Logo

Universidad Nacional Experimental Del Táchira
Decanato De Docencia
Dpto. Ingeniería Informática

Introducción a MVC

Programación II (Cod. 0415405T)

Temas a tratar

  • ¿Qué es un patrón de diseño?
  • MVC: Modelo Vista Controlador
  • Ejemplos de sistemas con patrones MVC

Conocimientos previos

  • El significado de BD, IU (UI en inglés), reglas del negocio.
  • Conocimientos de los distintos componentes de un aplicación

Objetivo de la clase

  • Aprender que es un patrón de diseño
  • Implementar un patrón de diseño en las aplicaciones
  • Comprender la importancia de organizar correctamente una aplicación

¡Comencemos!

Introducción

  • ¿Cómo suelen estructuras las aplicaciones?
  • ¿Han notado la organización al utilizan librerias de C#, Java, entre otros?
  • ¿Como encuentran las partes de una aplicación?
  • ¿Qué problemas existen al invertir mucho tiempo en ubicar componentes de una aplicación?

¿Qué es un patrón de diseño?

¿Qué es un patrón de diseño?

Los patrones de diseño son el esqueleto de las soluciones a problemas comunes en el desarrollo de software.

Nicolás Tedeschi (2014)

Tipos de patrones

  • Creacionales: define, inicialize y crea objetos.
  • Estructurales: separan la interfaz de la implementación. Indica cómo la agrupación de clases y objetos se agrupan, con el fin de formar estructuras más grandes.
  • De Comportamiento: describen la comunicación entre ellos.

Ejemplo de un patrón de diseño

Ejemplo de patrón de diseño

Ejemplo de un patrón creacional y estructural

MVC: Modelo Vista Controlador

MVC: Modelo Vista Controlador

Es el patrón de diseño mas popular, separa una aplicación en tres partes interconectadas:

  • Modelo: se encarga de manejar los datos.
  • Vista: presentación de datos y manejo de eventos.
  • Controlador: realizar la lógica del negocio.

Componentes de MVC

partes de MVC

Fuente: Solvetic



Interacción de los componentes de MVC por un evento del usuario

¿Por qué usar MVC?

  • Desarrollo en paralelo.
  • Se pueden crear varias vistas: HTML, JSON, SOAP, para administrador, para usuario.
  • Los modelos devuelven datos sin formato, permitiendo reutilización.
  • General URLs amigables con buscadores (SEO).

Problemas de MVC

  • Puede añadir capas de complejidad en problemas sencillos.
  • En aplicaciones gigantes puede producir problemas: muchos modelos, muchos controladores.
  • Para aplicaciones del lado del cliente existen mejores patrones.

Ejemplo de MVC en C#

Para una entidad llamada Producto:

  • Carpeta Controllers con las operaciones.
  • Carpeta Models con el acceso a los datos.
  • Carpeta Views con las distintas vistas del Producto.

Humor

Enlaces recomendados

¿Preguntas?