Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 2 августа!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

ПРОГРАММИРОВАНИЕ НА C и С++



Возможности языков семейства Си по истине безграничны, однако, в этой свободе кроются и недостатки: всегда нужно программисту держать ухо востро и контроллировать "переполнение буфера", чтобы потом программа не вылетала в "синий экран" на массе разнообразных версий Windows и железа у пользователей. Те же крэкеры и реверсеры специально ищут в коде программ на Си уязвимости, куда можно подсадить любой вирусный код, об этом более подробно автор рассказывал в своём видеокурсе здесь. Я там многое узнал и теперь мой код стал значительно более безопасный.

Visual C++. MFC
Урок 26. Понятие об архитектуре Документ-Вид

Архитектура Документ-Вид означает приблизительно следующее. У вас есть один класс, который отвечает за данные, и второй класс, который отвечает за представление этих данных на экране. Таким образом эти два класса разделяют обязанности, и каждый отвечает за свою собственную часть работы. При этом у одного документа может быть несколько видов. Класс документа отвечает за такие вещи, как хранение данных, за сохранение их на диске и чтение с диска и др., класс же вида за представление данных на экране (прорисовка, обновление и т. п.).

Пример номер один - Word. Вы можете просматривать ваш файл в разных режимах (обычном, режиме структуры и т. п.). И документ при этом у вас тот же самый, только его виды будут различаться.

Пример номер два. Программа - часы. Она просто показывает время. Но при этом собственно данные (текущее время и т. п.) лучше хранить отдельно от представления их на экране (например, потому, что ваши часы вы можете показывать в разных видах - в виде часов со стрелками, в виде электронных часов с цифрами и т. п.).

Пример номер три. Представьте себе, что в документе вы имеете дело с окружностью. На экране вы можете представить ее разными способами - или в виде собственно окружности, или в виде формулы, или еще как-нибудь. Документ при этом у вас будет один, а видов у него может быть несколько.

Когда вы начинаете делать свое приложение с использованием AppWizard, то на шаге 1 мастера вы задаете, будет ли или нет использоваться архитектура Документ-Вид:

Флажок Документ-Вид

В вашей программе класс документа - это потомок класса CDocument, а класс вида проиходит от класса CView непосредственно или через другие классы. Предка для вашего класса Вида вы можете выбрать на шаге 6 AppWizard'а:

Выбор вида

Отметим, то CView - это оконный класс (потомок класса CWnd), а CDocument - нет.



<< ВЕРНУТЬСЯ В ПОДРАЗДЕЛ

<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ




Материалы находятся на сайте https://exelab.ru/pro/



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS