518
USO DE FLASH PROFESSIONAL
Prácticas recomendadas
Última modificación 16/5/2011
Utilización del patrón de diseño MVC
El patrón de diseño MVC se utiliza para separar la información, la salida y el procesamiento de los datos de la
aplicación. La aplicación se divide en tres elementos: el modelo, la vista y el controlador; cada elemento gestiona una
parte distinta del proceso.
El modelo Incorpora los datos y las reglas de la aplicación. Gran parte del procesamiento de la aplicación tiene lugar
en esta parte del patrón de diseño. El modelo también contiene todos los componentes (por ejemplo, CFC, EJB y
servicios web) y la base de datos. No se aplica ningún formato a los datos devueltos para la interfaz (o procesador
principal) de la aplicación en esta parte del proceso. Los datos devueltos se pueden utilizar para distintas interfaces (o
vistas).
La vista Gestiona el procesador principal de la aplicación (la interfaz con la que interactúa el usuario) y representa el
contenido del modelo. La interfaz especifica la forma en que se presentan los datos del modelo, produce la vista que
utilizará el usuario y permite al usuario acceder a los datos de la aplicación o manipularlos. Si cambia el modelo, la vista
se actualiza para reflejar los cambios introduciendo o extrayendo datos (enviando o solicitando datos). Si crea una
aplicación web híbrida (por ejemplo, una en la que Flash Pro interactúe con otras aplicaciones de la página), tenga en
cuenta las distintas interfaces como parte de la vista del patrón de diseño. El patrón de diseño MVC admite la gestión
de diversas vistas.
El controlador Gestiona los requisitos del modelo y de la vista para procesar y mostrar datos. Suele contener mucho
código. Realiza llamadas a cualquier parte del modelo, según las peticiones realizadas por el usuario desde la interfaz
(o vista), y contiene código específico de la aplicación. Puesto que este código es específico de la aplicación, no suele
ser reutilizable. Sin embargo, el resto de componentes del patrón de diseño sí se pueden reutilizar. El controlador no
procesa ni produce ningún dato: recibe la petición del usuario y decide a qué parte del modelo o componentes de la
vista necesita llamar, determina dónde se envían los datos y qué formato se aplica a los datos devueltos. El controlador
garantiza que las vistas tengan acceso a las partes de los datos del modelo que deben mostrar. Normalmente, el
controlador transmite y responde ante cambios que afectan al modelo y a la vista.
Cada parte del modelo se crea como un componente de contenido propio en todo el proceso. Si se modifica una parte
del modelo (por ejemplo, al rediseñar la interfaz), el resto de partes del proceso no suele requerir ninguna
modificación, lo que reduce el número de problemas. Si el patrón de diseño se crea correctamente, puede cambiar la
vista sin tener que rediseñar el modelo o el controlador. Si la aplicación no utiliza MVC, los cambios realizados en
cualquier lugar pueden generar un efecto ondulado en todo el código. Esto requiere muchos más cambios que si se
utilizase un patrón de diseño específico.
Uno de los motivos de peso para utilizar el patrón MVC es la necesidad de separar los datos y la lógica de la interfaz
de usuario. Al separar estas partes del proceso, es posible disponer de varias interfaces gráficas distintas que utilicen el
mismo modelo y datos sin formato. Esto significa que se podrá utilizar la aplicación con distintas interfaces de Flash
Pro, como una interfaz para la web, una para un PC de bolsillo, una versión para teléfonos móviles y, tal vez, una
versión HTML que no utilice Flash Pro en absoluto. Al separar los datos del resto de la aplicación se reduce
significativamente el tiempo de desarrollo, de prueba e incluso de actualización de más de una interfaz del cliente. De
forma similar, añadir nuevos procesadores principales para la misma aplicación es más sencillo si se dispone de un
modelo existente.
Utilice MVC únicamente si va a crear una aplicación grande y compleja, como un sitio web de comercio electrónico o
una aplicación de aprendizaje por Internet. Para utilizar esta arquitectura, es necesario planificar y comprender el
funcionamiento de Flash Pro y de este patrón de diseño. Piense detenidamente cómo interactúan entre sí las distintas
partes; para ello se suele recurrir a las pruebas y a la depuración. Si utiliza MVC, las pruebas y la depuración están más
relacionados y suponen una mayor dificultad que en aplicaciones Flash Pro habituales. Si crea una aplicación en la que
será necesaria complejidad adicional, considere la posibilidad de utilizar MVC para organizar el trabajo.