5.1  Arquitectura Documento-Vista

De forma predeterminada, el Asistente para aplicaciones MFC crea una aplicación esqueleto con una clase de documento y una clase de vista. MFC divide la administración de datos en estas dos clases. El documento almacena los datos, administra la impresión de los mismos y coordina la actualización de varias vistas de los datos. La vista muestra los datos y administra la interacción de los usuarios con éstos, incluyendo la selección y la edición.

En este modelo, un objeto de documento MFC lee y escribe datos en un medio de almacenamiento persistente. El documento también puede proporcionar una interfaz para los datos allí donde residan (como en una base de datos). Un objeto de vista independiente administra la presentación de los datos, desde el procesamiento de datos en una ventana hasta la selección y edición de datos por parte del usuario. La vista muestra los datos del documento y devuelve al documento cualquier cambio que se realice en ellos.

Aunque se puede reemplazar fácilmente o pasar por alto la separación documento/vista, existen razones convincentes para seguir este modelo en la mayoría de los casos. Una de las mejores es cuando se necesitan varias vistas del mismo documento, como una vista de hoja de cálculo y una vista de gráfico. El modelo documento/vista permite a un objeto de vista distinto representar cada vista de los datos, mientras que el código común a todas las vistas (como un motor de cálculo) puede residir en el documento. El documento también realiza la tarea de actualizar todas las vistas cada vez que cambian los datos.

La arquitectura documento/vista de MFC facilita el uso de varias vistas, distintos tipos de documento, ventanas divisoras y otras características valiosas de interfaz de usuario.

Las partes más visibles del marco de trabajo de MFC para el usuario y para el programador son el documento y la vista. La mayor parte del trabajo de desarrollo de una aplicación con el marco de trabajo consiste en escribir las clases de documento y de vista. Este grupo de artículos describe:

  • Los fines de los documentos y las vistas y el modo en que interactúan en el marco de trabajo.
  • Lo que hay que hacer para implementarlos.