Está en la página 1de 5

Los modelos arquitectónicos populares actuales son MVC, MVP y

MVVM. Las personas prefieren los dos últimos. Permítanme hablar


sobre sus respectivas ventajas y desventajas.

1. Modo MVC:
MVC se divide en tres módulos: Modelo, Vista y Controlador. La vista
(capa de vista) completa la visualización de datos del front-end, el
controlador (capa de control) es la recepción y transmisión de recepción
de datos y eventos de activación, el modelo (capa de modelo) es el
almacenamiento y procesamiento de datos, y luego se pasa a la capa de
vista correspondiente o Mostrar. Como se muestra abajo

ventaja:

1. Separe toda la lógica empresarial en el controlador, con un alto grado de modularidad.


Cuando la lógica de negocios cambia, no hay necesidad de cambiar la Vista y el Modelo,
solo el Controlador debe ser reemplazado por otro Controlador (Controlador intercambiable).

2. El modo observador puede actualizar múltiples vistas simultáneamente.


1. Bajo acoplamiento
2. Alta reutilización
3. Alta mantenibilidad

Desventaja:

La prueba del controlador es difícil. Debido a que la operación de sincronización de la vista


es realizada por la Vista misma, la Vista solo puede ejecutarse en un entorno con una IU.
Cuando el controlador se prueba sin un entorno de interfaz de usuario, no se puede verificar
la corrección de la lógica de negocios del controlador: cuando el controlador actualiza el
modelo, no puede afirmar la operación de actualización de la vista.

Desventajas

1. No hay una definición clara.


2. No apto para aplicaciones pequeñas y medianas.
3. Aumentar la complejidad de la estructura y la implementación del sistema.
4. Conexión demasiado estrecha entre la vista y el controlador.
5. Acceso de vista ineficiente a los datos del modelo

2. Modo MVP: este proyecto se utiliza en nuestro proyecto y todavía se


siente muy bien.
MVP consta de tres partes: Modelo, Vista y Presentador. El modo MVP es
principalmente una versión mejorada del modo MVC para Android. El
punto más diferente entre MVP y MVC es que M y V no están directamente
relacionados, y no hay una relación directa entre Modelo y Vista. Las dos
capas están separadas por la capa Presentador. , Que se encarga de
regular la interacción indirecta entre Vista y Modelo. Como se muestra
abajo:
ventaja:

1. Reducir el acoplamiento
2. División clara de responsabilidades
3. Propicio para el desarrollo basado en pruebas
4. Reutilización de código
5. Ocultar datos
6. Flexibilidad de código
Desventajas: la representación de la vista se coloca en el Presentador,
por lo que la interacción entre la vista y el Presentador será demasiado
frecuente. Si el presentador representa demasiado la vista, tiende a
hacerla muy relacionada con una vista específica.
3. Modo MVVM: el modo que se esperaba usar
MVVM se divide en Modelo (capa de datos), ViewController / View (capa
de visualización) y ViewModel (modelo de datos). El modo MVVM es
principalmente para reducir la presión sobre la capa del controlador o la
capa de visualización, y para lograr un código más claro. Al encapsular la
capa ViewModel: encapsulando el procesamiento de lógica de negocios,
encapsulando el procesamiento de red, encapsulando la caché de datos,
etc., el procesamiento lógico se separa y no hay necesidad de procesar
datos del Modelo, lo que hace que la estructura de la capa Controlador o la
capa Vista sea simple y organizada. Como se muestra abajo:

ventaja:

1. En el enlace bidireccional, cuando el Modelo cambia, la Vista-Modelo se


actualizará automáticamente y la Vista cambiará automáticamente.
2. La función de Vista se fortalece aún más, con algunas funciones de
control.
3. La mayoría de las funciones del controlador se mueven a la Vista para su
procesamiento, lo que reduce en gran medida el peso del controlador.
Desventajas

1. El enlace de datos hace que los errores sean difíciles de depurar.


2. El enlace de datos bidireccional no es propicio para la reutilización del
código.
3. Los módulos y los modelos grandes no conducen a la liberación de
memoria.

También podría gustarte