
- •А.Ю. Быков
- •Быков Александр Юрьевич
- •Подхода
- •Оглавление
- •Введение
- •1. Лабораторная работа № 1. Изучение диалоговых окон и элементов управления в Win api
- •1.1. Цель и задачи работы, требования к результатам ее выполнения
- •1.2. Краткая характеристика объекта изучения
- •1.2.1. Классификация диалоговых окон
- •1.2.2. Окна сообщений
- •1.2.3. Создание модального диалогового окна
- •1.2.4. Элементы управления диалогового окна
- •Кнопка, контрольный переключатель, радио кнопка
- •Текстовое поле
- •Примеры
- •Примеры посылки сообщений списку
- •1.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •1.4. Форма отчета по лабораторной работе
- •1.5. Вопросы для самоконтроля
- •2.1. Цель и задачи работы, требования к результатам ее выполнения
- •2.2. Краткая характеристика объекта изучения
- •2.2.1. Понятие класса и объекта
- •2.2.2. Доступность компонент класса
- •2.2.3. Основные элементы класса Компонентные данные и функции класса
- •Конструктор класса
- •Деструктор класса
- •2.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •2.4. Форма отчета по лабораторной работе
- •2.5. Вопросы для самоконтроля
- •3.1. Цель и задачи работы, требования к результатам ее выполнения
- •3.2. Краткая характеристика объекта изучения
- •3.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •3.4. Форма отчета по лабораторной работе
- •4.2.3. Особенности конструкторов при наследовании
- •4.2.4. Особенности деструкторов при наследовании
- •4.2.5. Переопределение функций. Виртуальные функции
- •4.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •4.4. Форма отчета по лабораторной работе
- •5.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •5.4. Форма отчета по лабораторной работе
- •6.2.2. Создание потока с помощью api – функций
- •6.2.3. Синхронизация потоков
- •1. Взаимное исключение.
- •3. Семафор
- •4. Событие
- •6.2.4. Синхронизация процессов
- •6.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •6.4. Форма отчета по лабораторной работе
- •6.5. Вопросы для самоконтроля
- •7. Лабораторная работа № 7. Изучение библиотеки классов mfc
- •7.1. Цель и задачи работы, требования к результатам ее выполнения
- •7.2. Краткая характеристика объекта изучения
- •7.2.1. Обзор упрощенной иерархии классов библиотеки mfc
- •7.2.2. Состав простейшего приложения в mfc
- •7.2.3. Обработка сообщений в mfc
- •Некоторые функции обработчики
- •7.2.4. Вывод графики в mfc
- •Графические объекты
- •Добавление обработчиков сообщений и событий в однодокументном приложении
- •Вывод графики и перерисовка
- •7.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •7.4. Форма отчета по лабораторной работе
- •7.5. Вопросы для самоконтроля
- •8. Лабораторная работа № 8. Изучение разработки приложений для платформы Microsoft .Net с использование библиотеки классов .Net Framework
- •8.1. Цель и задачи работы, требования к результатам ее выполнения
- •8.2. Краткая характеристика объекта изучения
- •8.2.1. Обзор платформы Microsoft .Net
- •8.2.2. Единая среда исполнения
- •8.2.4. Понятие управляемого кода
- •8.2.6. Система общих типов
- •8.2.7. Обзор библиотеки классов .Net Framework
- •8.2.8. Класс Form
- •8.2.9. Обработка событий
- •8.2.10. Основные элементы управления
- •8.4. Форма отчета по лабораторной работе
- •8.5. Вопросы для самоконтроля
- •Заключение
- •Рекомендуемые источники
- •Приложение а. Варианты заданий для выполнения лабораторных работ Варианты заданий для лабораторной работы № 1
- •Варианты заданий для лабораторной работы № 2
- •Варианты заданий для лабораторной работы № 3
- •Варианты заданий для лабораторной работы № 4
- •Варианты заданий для лабораторной работы № 5
- •Варианты заданий для лабораторной работы № 6
- •Часть I
- •Часть II
- •Варианты заданий для лабораторной работы № 7
- •Варианты заданий для лабораторной работы № 8
Введение
Язык программирования Си++ разработан фирме Bell Labs в начале 1980-х годов, создателем языка считается Бьерн Страуструп [1]. Он предложил ряд усовершенствований к языку Си, главное, дополнительно к возможностям языка Си язык Си++ включает объектно-ориентированные средства. Первоначально новый язык называли «Си с классами», название «Си++» появилось в 1983 г.
Язык Си++ содержит все возможности языка Си, который был ориентирован, прежде всего, на системное программирование, и содержит средства, присущие языкам высокого уровня, ориентированным на прикладное программирование.
Синтаксис языка Си++ оказался настолько удачным, что многие языки программирования, созданные позже для других целей, например, для разработки Интернет приложений, наследовали основные элементы синтаксиса языка Си++. К таким языкам относятся: Java, C# (Си шарп), PHP. Изучив язык Си++, освоить данные языки можно достаточно быстро.
Методические указания к лабораторным работам включают в себя работы по решению различных задач на языке Си++. Рассмотрены примеры решения задач, с использованием следующих синтаксических конструкций и возможностей языка: классы языка Си++, перегрузка стандартных операций, наследование классов, абстрактные классы и полиморфизм, применение библиотек классов, таких как, MFC и .NET Framework для решения различных задач, потоковая многозадачность.
При выполнении лабораторных работ целесообразно использовать программный продукт Microsoft Visual Studio версии 2013 или более поздних версий. Студент может этот программный продукт получить бесплатно, воспользовавшись программой DreamSpark (бывшая MSDN AA) [2], для этого достаточно зарегистрироваться на сайте библиотеки МГТУ им. Н.Э. Баумана.
При подготовке отчета по каждой лабораторной работе необходимо последовательно и полно представить все основные шаги алгоритма решения задачи. В тексте программы необходимо представить необходимые комментарии. Студент должен быть знаком с основными понятиями объектно-ориентированного программирования и быть способным ответить на предложенные ему контрольные вопросы. Типовые варианты лабораторных работ представлены в приложении А. Студент должен выбрать свой вариант в соответствии с номером в списке группы в электронном университете.
Целевая аудитория методических указаний студенты МГТУ имени Н.Э. Баумана, обучающиеся по специальностям 1005010065 «Компьютерная безопасность» и 1005030065 «Информационная безопасность автоматизированных систем», также методические указания могут быть использованы студентами других специальностей, занимающимися программированием.
1. Лабораторная работа № 1. Изучение диалоговых окон и элементов управления в Win api
1.1. Цель и задачи работы, требования к результатам ее выполнения
Цель работы состоит в изучении основных API (Application Programming Interface) функций для работы с диалоговыми окнами и элементами управления и в овладении навыками разработки программ на языке Си++ с использованием диалоговых окон и элементов управления. Для достижения цели необходимо выполнить следующие задачи:
- изучить необходимые учебные материалы, посвященные использованию диалоговых окон и элементов управления в языке Си++ с помощью API- функций Windows [1, 3, 4];
- разработать программу на языке Си++ для решения заданного варианта задания;
- отладить программы;
- представить скриншот окна с результатами работы программы;
- подготовить отчет по лабораторной работе.