Descargar

Comparación teórica de una arquitectura MVC con una arquitectura PAC (página 2)

Enviado por Pablo Turmero


Partes: 1, 2
edu.red

Arquitectura MVC (Estructura)

edu.red

Creación De Los Componentes

edu.red

FLUJO DE INFORMACIÓN

edu.red

PATRONES DE DISEÑO Involucrados Registrar Vistas con el Modelo para que éste los notifique usualmente se realiza con el patrón Observer Es posible realizar una variación del patrón en donde existen diferentes listas de vistas a ser actualizadas de acuerdo con su interés.

edu.red

Pasos Para la Implementación Separar funcionalidad Principal de la interacción con el usuario Implementar el mecanismo de propagación de cambios Diseñar e Implementar las Vistas Diseñar e Implementar los Controladores Diseñar e Implementar las relaciones entre vista y controlador Implementar la inicialización del MVC Creación de Vistas Dinámicas Controladores agregables Infraestructura para vistas y controladores jerárquicos Desacoplamiento de las dependencias del sistema

edu.red

Arquitectura PAC Este patrón define una descomposición modular para sistemas interactivos utilizando agentes cooperativos organizados de manera jerárquica.

edu.red

Arquitectura PAC La descomposición de componentes se realiza de la siguiente manera: Se definen agentes que se hacen cargo de un aspecto de la funcionalidad Cada uno de los agentes definidos contiene 3 componentes: Presentación, Abstracción y Control P (Presentación /Presentation) Es el encargado de mostrar la interfaz del usuario A (Abstracción / Abstraction) Se encarga de mantener el estado del agente y sus modificaciones. C (Control /Control) Es el encargado de comunicación entre agentes, este componente generalmente tiene las mismas responsabilidades en los diferentes agentes

edu.red

Arquitectura PAC (Componentes)

edu.red

Arquitectura PAC (Estructura)

edu.red

Arquitectura PAC (Ejemplo)

edu.red

FLUJO DE INFORMACIÓN

edu.red

PATRONES DE DISEÑO Involucrados El componente de Control usualmente se implementa usando un “Mediator” El componente de Presentación usualmente se implementa usando un “Strategy”

edu.red

Pasos Para la Implementación Definir un modelo de la aplicación; Definir una estrategia general para organizar la jerarquía Especificar los Agentes Top-Level Especificar los Agentes Bottom-Level Especificar los Agentes Bottom-Level para servicios del sistema Especificar los Agentes Intermediate-Level que se componen de los Agentes Bottom-Level Especificar los Agentes Intermediate-Level que coordinan a los Agentes Bottom-Level Separar funcionalidad Principal de la interacción con el usuario Proveer la interfaz externa Vincular los agentes de acuerdo con la jerarquía

edu.red

Comparación (Ventajas) MVC PAC Implementación sencilla Funcionalidades bien definidas Facilita el cambio o la adición de una nueva vista  Funcionalidades especificas Procesamiento en paralelo por definición Facilita el cambio de una funcionalidad Comunicación bien definida sin necesidad de conocer los otros agentes

edu.red

Comparación (Desventajas) MVC PAC Alto acoplamiento entre algunos componentes Al aumentar el numero de vistas aumenta la complejidad Necesidad de contar con una lista de vistas a actualizar  Complejo de Implementar No existe una regla general para la definición de responsabilidades entre los agentes

edu.red

Contexto: Aplicación Gráfica (MVC) La arquitectura más utilizada es la MVC, ya que facilita la implementación de la representación visual de los datos generados en el modelo. MVC es utilizado para aplicaciones que se basan en un mismo modelo, esto ocurre en una gran cantidad de aplicaciones gráficas como juegos.

edu.red

Contexto: Aplicación Gráfica (MVC) Las posibles limitaciones del MVC en cuanto a diferentes entradas y múltiples vistas se ven amortiguadas por el hecho que, usualmente, las aplicaciones gráficas son mono usuario y la gran parte del procesamiento se encuentra en el modelo. 

edu.red

Contexto: Aplicación Gráfica (PAC) En una implementación con el patrón PAC facilita la lectura de datos y la presentación adecuada de éstos Cada uno de los agentes involucrados se encarga de una parte de la funcionalidad y realiza procesos en paralelo

edu.red

Contexto: Aplicación Gráfica (PAC) Una aplicación que requiera procesar gran cantidad de datos para visualizarlos puede beneficiarse de la eficiencia brindada por el PAC. Un ejemplo es un simulador de fuerzas físicas, en el cual se tienen en cuenta gran cantidad de datos que requieren ser procesados y visualizados rápidamente y de forma realista

edu.red

Conclusiones Aunque con el patrón PAC se aumenta la complejidad de implementación, se solucionan algunos problemas que el MVC contiene, como la necesidad de tener la lista de vistas a implementar y la necesidad de implementar paralelismo en el modelo, ya que el patrón PAC funciona de forma paralela desde su definición. PAC puede generar un en el rendimiento de una aplicación gráfica similar a un simulador

edu.red

Trabajo Futuro Implementación de una aplicación gráfica, tipo simulador utilizando ambos patrones y comparar tiempos de respuesta y de procesamiento con el fin de comparar el rendimiento de un sistema que utiliza MVC con otro que utiliza PAC

Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente