Introducción a Modelo Vista Vista Modelo (MVVM)

La descripción del modelo es la siguiente:

  • MODELO: (Código reutilizable – DATOS) Objetos comerciales que encapsulan datos y el comportamiento del dominio de la aplicación, simplemente contienen los datos. 
  • VER: (Código específico de plataforma – INTERFAZ DE USUARIO) Lo que ve el usuario, Los datos formateados. 
  • VIEWMODEL: (Código reutilizable – LÓGICA) Enlace entre el modelo y la vista O Recupera datos del modelo y los expone a la vista. Este es el modelo diseñado específicamente para la Vista. 

Nota: El vínculo entre el modelo y el modelo de vista es la manipulación de datos y entre el modelo de vista y la vista es un enlace de datos bidireccional. 

INTRODUCCIÓN BÁSICA:  [ Camino al código de estructura]

 

CARACTERISTICAS:  

  • Se mantendrá el estado del ciclo de vida de la aplicación.
  • La aplicación estará en la misma posición donde la dejó el usuario.
  • Los componentes de la interfaz de usuario se mantienen alejados de la lógica empresarial.
  • La lógica de negocios se mantiene alejada de las operaciones de la base de datos.
  • Fácil de entender y leer.

EJEMPLO BÁSICO:  Queremos mostrar el nombre en color púrpura (no escrito en el formato correcto, la longitud adecuada) o mostrar el color púrpura si la edad de una persona es> 18 años, mostrar el color rosa si la edad de una persona es <18 años, entonces la Lógica de Color Púrpura y Rosa estaría presente en ViewModel. 

RESUMEN:  Desde el servidor, Obtener datos (disponible en Objetos del modelo), Ver modelo lee los Objetos del modelo y luego facilita la presentación de datos en la vista.

Las principales diferencias entre MVVM Y MVC son las siguientes: 

MVVM MVC
El modelo es algo similar a MVC, pero aquí tenemos ViewModels que se pasan a la vista y toda la lógica está en ViewModel y, por lo tanto, no hay ningún controlador. Ejemplo: Knockout.js En este patrón, tenemos modelos que son objetos básicos sin código y solo propiedades, vistas que contribuyen a los elementos de presentación (HTML, WinForms, etc.), eliminaciones del lado del cliente y controladores que se enfocan en la parte lógica. Ejemplos: ASP.NET MVC, Angular
En MVVM, su DeletePerson se cancelaría de su modelo de vista Tenemos un PersonController con una Action DeletePerson que elimina a una persona
Estamos en el lado del cliente para que podamos aferrarnos a los objetos y hacer mucha más lógica en un estado no desconectado. MVC se usa típicamente cuando las cosas son transaccionales y están desconectadas, como es el caso de la web del lado del servidor. En ASP MVC, enviamos la vista a través del cable y luego finaliza la transacción con el cliente.

VENTAJAS:  

  • Mantenibilidad: puede permanecer ágil y seguir lanzando versiones sucesivas rápidamente.
  • Extensibilidad: tiene la capacidad de reemplazar o agregar nuevas piezas de código.
  • Capacidad de prueba: es más fácil escribir pruebas unitarias contra una lógica central.
  • Comunicación transparente: el modelo de vista proporciona una interfaz transparente para el controlador de vista, que utiliza para llenar la capa de vista e interactuar con la capa del modelo, lo que da como resultado una comunicación transparente entre las capas de su aplicación.

DESVENTAJAS: 

  • Algunas personas piensan que para interfaces de usuario simples, MVVM puede ser excesivo.
  • En casos más grandes, puede ser difícil diseñar ViewModel.
  • La depuración sería un poco difícil cuando tenemos enlaces de datos complejos.

Publicación traducida automáticamente

Artículo escrito por saumyasaxena2730 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *