- •Ф.Ф. Павлов технология программирования
- •Санкт-Петербург
- •090103 – Организация и технология защиты информации
- •Содержание
- •Раздел 1 Создание программных приложений………………..…..7
- •Тема 1. Технология программирования. Основные понятия........7
- •Тема 3. Объектно-ориентированный подход
- •Тема 4 Объектно-ориентированное проектирование
- •Раздел 3 «Перспективные направления в области создания технологий программирования» содержит 3 темы: технология ActiveX, технологии доступа к базам данных, технологии для работы в Internet.
- •Раздел 1. Создание программных приложений
- •Тема 1. Технология программирования.
- •1.1. Этапы эволюции технологии программирования
- •1.2. Жизненный цикл и этапы разработки программ
- •1.3. Постановка задачи и спецификация программы
- •1.4. Проектирование и реализация программы
- •2.1 Структура программы
- •2.2 Структура функции
- •2.3. Типы данных
- •2.4. Средства управления экраном и клавиатурой
- •2.5 Средства управления файлами
- •Тема 3. Объектно-ориентированный подход
- •3.1. Сущность объектно-ориентированного подхода
- •3.2. Инкапсуляция
- •3.3. Наследование
- •3.4. Полиморфизм
- •Тема 4. Объектно-ориентированное проектирование
- •4.1. Постановка задачи и определение спецификаций
- •4.2. Проектирование структуры программы
- •4.3. Проектирование файлов интерфейсов классов
- •4.4. Проектирование файлов реализации классов
- •Раздел 2. Особенности программирования в Windows
- •5.1. Система окон разработки и система меню
- •5.2. Библиотека классов mfc
- •5.3. Сообщения – реакция на события
- •Тема 6. Создание Windows-приложений
- •6.1. Консольные приложения
- •6.4. Диалоговые приложения
- •Тема 7. Ввод-вывод информации
- •7.1. Управление клавиатурой
- •7.2. Управление курсором
- •7.3. Управление мышью
- •Тема 8. Программирование интерфейса приложений
- •8.1. Система меню
- •8.2. Система диалоговых окон и элементов управления
- •Тема 9. Программирование файловой обработки
- •9.1. Файловая обработка объектов класса mfc
- •9.2. Файловая обработка объектов классов пользователя
- •9.3. Файловая обработка с классом cFile
- •Тема 10. Технология программирования в Widows
- •10.1. Проектирование структуры программы,
- •10.2. Создание классов предметной области
- •10.3. Создание диалоговых окон
- •10.4. Создание диалоговых окон базы справочных
- •10.5. Создание ведомости результатов
- •Раздел III. Прогрессивные технологии
- •Тема 11. Технология ActiveX
- •11.1. Концепция технологии ActiveX
- •11.2. Создание приложения-контейнера
- •11.3. Создание приложения-сервера
- •Тема 12. Поддержка баз данных
- •12.1. Технологии доступа к данным
- •12.2. Создание приложения с базой данных
- •Тема 13. Программирование для Internet
- •13.1. Технологии для работы в Internet
- •13.2. Приложение в стиле браузера
- •13.3. Приложение с протоколом http в WinInet
- •13.4. Приложение с протоколом ftp в WinInet
- •Раздел 1 «Создание программных приложений»:
- •Раздел 2 «Особенности программирования в Windows»:
- •Раздел 3 «Прогрессивные технологии программирования»:
- •Извлечение из рабочей программы дисциплины
- •Утверждаю
- •Рабочая программа
- •Технология программирования
- •Санкт-Петербург
- •4. Содержание разделов и тем дисциплины
- •Раздел 1. Создание программных приложений
- •Тема 1. Технология программирования. Основные
- •Тема 4. Технология объектно-ориентированного
5.2. Библиотека классов mfc
Библиотека классов Microsoft Foundation Classes (MFC) содержит более 200 уже написанных классов для Windows - программирования.
Функции классов MFC внутри себя вызывают функции библиотеки Windows Win32 API (1000 функций), т.е. можно сказать, что в MFC включен Win32 API. Преимущество MFC по сравнению с Win32 API заключаются в упрощении и ускорении разработки Windows-приложений.
Библиотека классов MFC имеет следующие преимущества:
- использует удобно внутри себя библиотеку Win 32 API;
- упрощает и ускоряет разработку Windows-приложений;
- создает компактность программного кода;
- сокращает время разработки графического интерфейса пользователя;
- значительно упрощает применение прогрессивных технологий программирования: технологии ActiveX, поддержку баз данных с технологиями ODBC и DAO; технологий для Internet.
Библиотека MFC – иерархическая совокупность классов C++, реализующая методы инкапсуляции, наследования и полиморфизма.
Классы MFC можно разделить на несколько категорий:
- структура приложения: классы приложения и поддержки потоков, маршрутизации команд, документов;
- пользовательский интерфейс: классы фреймов окон, блоков диалога и элементов управления;
- вывод данных: классы контекста устройства, графических объектов;
- наборы данных: классы массивов, списков;
- простые типы данных: классы точки, прямоугольника, строки, времени и даты;
- технология ActiveX: контейнерные и серверные классы для поддержки операций с составными документами;
- файлы и базы данных: классы файлов ввода-вывода, для доступа с технологиями ODBC и DAO;
- internet и сети: классы технологий WinInet API, Internet Server API, Windows Socket.
Библиотека MFC для идентификации переменных используют соглашение, называемое Венгерской нотацией (автор – венгерский программист Чарлз Симони). Имя переменной состоит из префикса (буквы, обозначающей тип переменной) и описательной части из одного или нескольких слов, причем каждое слово начинается с заглавной буквы. Например, n, i - целое число (тип int), l - длинный тип (long), d - число с двойной точностью (double), c - символьный тип (char), s - строковая переменная.
Рассмотрим структуру приложения (тип проекта Visual C++ Project MFC, шаблон MFC Application).
Базовая концепция MFC и AppWizard – это понятие “Документ - Представление”. Принято предположение, что любое приложение что-то имеет, что необходимо хранить на диске. Эту совокупность информации обозначили как Документ, а просмотр информации обозначили как Представление.
После выполнения 6 этапов настройки параметров проекта будут созданы следующие главные классы и файлы приложения, представленные в табл. 2.1.
Табл. 2.1.
Класс |
Имя класса |
Базовый класс |
Файлы |
Документ |
CLab1_2Doc |
CDocument |
Lab1_2Doc.h Lab1_2Doc.cpp |
Представление |
CLab1_2View |
CView |
Lab1_2View.h Lab1_2View.cpp |
Главное окно |
CMainFrame |
CFrameWnd |
MainFrame.h MainFrame.cpp |
Приложение |
CLab1_2App |
CWinApp |
Lab1_2.h Lab1_2.cpp |
Appwizard создал 4 главных класса и на каждый класс - файл интерфейса и файл реализации. Класс Документ предназначен для хранения данных, записи и чтения их с диска. Класс Представление (или Вид) служит для отображения данных, вводимых пользователем, управляет окном представления (обработкой данных). Класс Главное окно управляет главным окном программы (окном-рамкой) и содержит рамку окна, строки заголовка, меню (за исключением клиентской области). Класс Приложение предназначен для управления программой в целом: запуска программы, инициализации, создания главного окна, передачи сообщений Windows.