Curso de Arquitecturas MV*
El curso definitivo para dominar todos los estilos de arquitecturas del software MV* (MVC, MVP-PM, MVVM…)
Material disponible
Avanzado
5 Clases 11 h
Este curso aborda de manera detallada el estudio de las arquitecturas llamadas MV*, en todas sus variantes más populares, presentes en infinidad de proyectos del software y los frameworks para desarrollo más conocidos. 

Durante el curso explicaremos las distintas variantes de MV* (MVC, MVP-PM, MVP-VP, MVP-SC, MVVM), de modo que el estudiante sea capaz de comprender, diseñar o evaluar arquitecturas del software basadas en estos patrones.  

El conocimiento se aplicará además en un caso práctico, en el que se analizará una aplicación ya realizada, con el objetivo de diseñar e implementar una arquitectura MV* que permita evolucionar la aplicación debido a un cambio en los requisitos iniciales (front, distribución, persistencia, ...). 

Qué aprenderé en el Curso de Arquitecturas MV*

  • Estados, Sincronización y Lógica
  • Modelo/Vista/Controlador
  • Modelo/Vista/Presentador
  • Modelo/Vista/Presentador con Presentador del Modelo
    • Cambio de presentación
    • Cambio de funcionalidad
    • Cambio de distribución
    • Cambio de persistencia
    • Cambio de modelo
  • Modelo/Vista/Vista-Modelo
  • Modelo/Vista/Presentador con Vista Pasiva
  • Modelo/Vista/Presentador con Controlador Supervisor
  • Gestión de la Arquitectura MV*
  • Análisis de la Arquitectura
  • Diseño de la Arquitectura
  • Mantenimiento de la Arquitectura: Métricas e Inspección (XP)

Objetivos del curso

Este curso permite a cualquier persona dominar los estilos de arquitecturas del software basados en el modelo vista controlador (MVC, MVP-PM, MVVM…)

  • El alumno será capaz de conocer y comprender arquitecturas basadas en MV*
  • Disponer los conocimientos para analizar arquitecturas actuales
  • Tener capacidad de diseñar y evaluar arquitecturas software existentes basadas en MV*
  • Analizar aplicaciones ya realizadas, diseñar e implementar una nueva arquitectura basada en MV*, que permita su adaptabilidad a nuevos requisitos

Clases y contenidos

Fundamentos de las arquitecturas MV*

En esta clase se explica qué es una arquitectura MV* y se repasan varios estilos arquitectónicos relacionados. Se estudia la arquitectura MVC desde sus orígenes y cómo se ha ido acomodando a lo largo de diversas implementaciones. También se explica los motivos por los que resulta importante y cuáles son sus aplicaciones en diversos campos del desarrollo. Además se ofrece una descripción detallada de sus distintos componentes, cómo se dividen las responsabilidades en el código y cómo se relacionan entre sí en el marco de las aplicaciones. Finalmente se explican los beneficios que con ello se pretende conseguir y las buenas prácticas para maximizarlos.

MVP en una aplicación

Después del típico repaso vamos a abordar una clase completamente práctica, en la que vamos a revisar clase a clase el código de nuestra aplicación mastermind, una vez aplicado el estilo arquitectónico MVP. Iremos conociendo cada una de sus clases, con los detalles relacionados con la arquitectura implementada y cómo éstos nos permiten conseguir los objetivos propuestos para el curso y por la arquitectura, observando las ventajas que nos trae en el código. Una vez revisado todo el código observaremos la arquitectura de paquetes y de clases de este proyecto, tal como lo tenemos hasta este punto.

Funcionalidades avanzadas con arquitectura MVP

En esta clase abordamos nuevas versiones del proyecto de práctica, en las que se añaden funcionalidades avanzadas, que no por ello hace que nuestro código quede más complejo. Más bien, se consigue mediante clases y métodos sencillos, con un buen reparto de la responsabilidad y apoyándose en diferentes patrones de diseño de software, y por supuesto, en una arquitectura de aplicación bien modularizada atendiendo al modelo MVP. Al final de la clase se propone un nuevo reto, que consiste en incorporar dos modelos de aplicación, standalone y basado en cliente/servidor. Se ve una primera solución, que no es satisfactoria, por diversos motivos que se explican.

Nuevas funcionalidades evolucionando la arquitectura

En esta clase continuamos mejorando sensiblemente la aplicación del curso, realizando nuevas mejoras. La más destacada es la parte de la persistencia de los datos, que se realiza en dos soportes, sistema de ficheros y la base de datos. Para ello tendrá que evolucionar nuestra arquitectura un poco más.

Revisión de las distintas modalidades de estilos arquitectónicos MV*

En esta clase hacemos un análisis de distintos estilos arquitectónicos englobados en MV*. MVP, MVVM, MVC... destacando diferencias, ventajas, inconvenientes, etc. Los vemos expresados en el mismo proyecto práctico. Completamos la sesión mencionando diversos frameworks y sus estilos arquitectónicos aplicados.

Valoraciones

Tomás De Anta

Arturo Portable

Isaias

JMSanchez

¿Conoces nuestra tarifa plana?

Toda la formación de EscuelaIT, con más de 130 cursos completos para aprender las más variadas tecnologías de programación, diseño y marketing online. Todo! con tu suscripción.

Suscríbete