Программы, написанные
на VC++, используют для работы и предоставления данных архитектуру "документ-вид",
которая характерна для большинства Windows-приложений. Такая архитектура
разделяет "документ", то есть данные, с которыми работает программа, и
"вид", то есть способ представления этих данных пользователю. Другими словами,
способ хранения данных на диске или в памяти никаким образом не влияет
на их внешнее представление пользователю. Представьте себе, например, хранящуюся
в памяти сканированную фотографию. Программа может изображать ее в нескольких
видах (например, в одном окне — полностью, а. в другом — увеличенный участок).
Все изменения, происходящие при редактировании изображения в одном окне,
автоматически появляются в другом. Другие примеры такой архитектуры вы
можете встретить практически в любой программе, например, в текстовом процессоре,
который может показывать текст как в нормальном виде, так и в виде готового
листа бумаги для предварительного, просмотра при выводе на печать.
В программах, пользующихся
библиотекой MFC, как документ, так и его виды представляются классами VC++.
В большинстве случаев вы сможете произвести необходимые вам для этого классы
от базовых, уже имеющихся в библиотеке MFC. Каждый документ будет представлен
в виде объекта (помните, что мы говорили о классах и объектах немного выше?),
который будет обеспечивать пространство для хранения данных в памяти и
отвечать за основные операции, например такие, как запись и чтение документа
с диска (большая часть таких операций выполняется основой вашего приложения).
Кроме того, у вас будет по объекту для каждого используемого вами вида.
Каждый объект-вид представляет собой экранное окно и отвечает за такие
задачи, как взаимодействие с пользователем, взаимодействие с соответствующим
объектом-документом, печать и т.п.