Partager via


Avantages de l'architecture document/vue

L’avantage clé de l’utilisation de l’architecture de document/vue MFC est que l’architecture prend en charge plusieurs vues du même document particulièrement bien. (Si vous n’avez pas besoin de plusieurs vues et que la petite surcharge de document/vue est excessive dans votre application, vous pouvez éviter l’architecture. Alternatives à l’architecture document/vue.)

Supposons que votre application permet aux utilisateurs d’afficher des données numériques sous forme de feuille de calcul ou sous forme de graphique. Un utilisateur peut souhaiter voir simultanément les données brutes, sous forme de feuille de calcul et un graphique qui résulte des données. Vous affichez ces vues distinctes dans des fenêtres frame distinctes ou dans des volets de fractionnement dans une seule fenêtre. Supposons maintenant que l’utilisateur puisse modifier les données de la feuille de calcul et voir les modifications instantanément reflétées dans le graphique.

Dans MFC, la vue feuille de calcul et l’affichage graphique seraient basés sur différentes classes dérivées de CView. Les deux vues sont associées à un seul objet de document. Le document stocke les données (ou peut-être les obtient à partir d’une base de données). Les deux vues accèdent au document et affichent les données qu’ils récupèrent.

Lorsqu’un utilisateur met à jour l’une des vues, cet objet d’affichage appelle CDocument::UpdateAllViews. Cette fonction avertit toutes les vues du document, et chaque vue se met à jour à l’aide des données les plus récentes du document. Appel unique pour UpdateAllViews synchroniser les différentes vues.

Ce scénario serait difficile à coder sans la séparation des données de la vue, en particulier si les vues stockaient elles-mêmes les données. Avec document/affichage, il est facile. Le cadre effectue la plupart du travail de coordination pour vous.

Que voulez-vous en savoir plus sur

Voir aussi

Architecture de document/affichage