- •Разработка объектно-ориентированных программ
- •Методические указания
- •1. Методология программирования
- •1.1. Методология объектно-ориентированного
- •1.2. Методология объектно-ориентированного анализа
- •2. Особенности программирования в среде Windows
- •2.1 Разработка объектно-ориентированных программ
- •2.2. Разработка объектно-ориентированных программ
- •4. Лабораторный практикум
- •4.1. Лабораторная работа 1.
- •Общие сведения
- •Лабораторное задание
- •Варианты лабораторных заданий
- •Контрольные вопросы
- •4.2. Лабораторная работа 2.
- •Общие сведения
- •Лабораторное задание
- •Варианты лабораторных заданий
- •4.3. Лабораторная работа 3.
- •Общие сведения
- •Лабораторное задание
- •Варианты лабораторных заданий
- •4.4. Лабораторная работа 4.
- •Общие сведения
- •Лабораторное задание
- •4.5. Лабораторная работа 5.
- •Общие сведения.
- •Лабораторное задание
- •Варианты лабораторных заданий
- •4.6. Лабораторная работа 6.
- •Общие сведения.
- •Лабораторное задание
- •Варианты лабораторных заданий
- •4.7. Лабораторная работа 7.
- •Общие сведения.
- •Лабораторное задание.
- •Приложение а. Спецификации api-функций.
- •Приложение б. Основные классы mfc.
4. Лабораторный практикум
Лабораторный практикум включает восемь лабораторных работ, предполагающих работу с проектами различных типов, программным интерфейсом приложений Windows и библиотекой фундаментальных классов MFC. В работах 6, 7, 8 допускается при создании проекта использовать MFC AppWizard.
Результатом выполнения каждой работы должна быть отлаженная объектно-ориентированная программа, выполняющая функции, определенные лабораторным заданием. По каждой лабораторной работе составляется отчет, который должен содержать:
титульный лист;
название и цель работы;
лабораторное задание;
описание особенности проекта и пользовательского интерфейса;
описание используемых классов;
текст программы;
результаты работы программы в виде распечатки соответствующих окон;
выводы, которые должны доказывать достоверность полученных результатов.
Кроме того, отчеты по работам 6, 7, 8 должны содержать диаграммы классов на языке UML.
4.1. Лабораторная работа 1.
Принципы разработки классов. Механизм инкапсуляции.
Разработка простой объектно-ориентированной программы.
Цель работы: освоить работу в интегрированной среде программирования Visual C++, создать класс с использованием принципа инкапсуляции, имеющий конструктор (по умолчанию и с параметрами) и деструктор и разработать простую объектно-ориентированную программу (консольное приложение).
Общие сведения
Класс, представляющий собой тип, определяемый пользователем, включает в свой состав члены класса – свойства (переменные) и методы (функции), определяющие поведение объектов класса. Члены класса могут иметь различные типы видимости: public (публичный, открытый), private (личный) и protected (защищенный). К открытым членам класса могут иметь доступ объекты других классов. Объекты класса могут создаваться как локальные или глобальные при объявлении переменных (скалярных или векторных) классового типа или в свободной памяти. При создании объектов класса могут использоваться конструкторы по умолчанию или конструкторы с параметрами (для инициализации объектов класса). При уничтожении объектов класса могут использоваться деструкторы для выполнения действий, связанных с завершением функционирования объекта. И конструкторы, и деструкторы вызываются автоматически.
Описание классов, как правило, выполняется в заголовочных файлах, а определение функций-методов – в файлах *.cpp.
При разработке программы необходимо использовать проект типа Consol Application.
Необходимо учесть, что класс, разработанный в данной лабораторной работе, будет использоваться в последующих работах.
Лабораторное задание
В соответствии с вариантом лабораторного задания разработать класс, включающий члены трех типов видимости и имеющий конструкторы (по умолчанию и с параметрами) и деструктор. В классе предусмотреть функции-методы для ввода и вывода данных объектов созданного класса. Целесообразно разработать перегруженные конструкторы (конструкторы с различным числом и типами аргументов), чтобы предусмотреть различные возможные варианты инициализации объектов класса.
Написать программу, выполняющую:
формирование массива объектов (с конструктором по умолчанию);
формирование одиночных объектов (с конструктором с параметрами);
ввод данных с клавиатуры;
вывод данных на экран.
Объекты класса должны создаваться при определении переменных.
В вариантах лабораторных заданий дано примерное содержание объектов класса. Начальное значение свойств задать самостоятельно.