Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛПО_лаб4.doc
Скачиваний:
43
Добавлен:
30.08.2019
Размер:
424.45 Кб
Скачать

3.5 Отчет о выполнении задания

Текст отчета должен включать следующие разделы:

1. Уточнение постановки задачи для выбранного варианта задания, при необходимости – описание математической модели процесса или явления.

Например: Демонстрационная модель солнечной системы.

Смоделировать на основе законов Кеплера движение планет Солнечной системы и пролет кометы через нее с заданной скоростью.

2. Диаграмма классов, показывающая выделенные классы и связи между ними.

Например:

3. Текстовые спецификации интерфейса основных классов системы.

Например, для одного из классов:

//Интерфейс класса, представляющего Солнечную систему

class CSolarSystem

{ public:

//итераторы для объектов системы

typedef TBodies::iterator TIterator;

TIterator begin();

TIterator end();

//конструктор и деструктор

CSolarSystem(void);

~CSolarSystem(void);

//пересчет положения объектов системы

void nextFrame(double days_per_frame);

//добавление тела p в систему

void addBody(CCelestialBody * p);

//удаление тела p из системы

void removeBody(CCelestialBody * p);

};

4. Диаграмма объектов, показывающая основные объекты и их связи.

Например, для модели Солнечной системы (для наглядности на стрелках не указываются названия вызываемых методов):

5. Инструментальные средства, использованные при выполнении задания: язык программирования, интегрированная среда, библиотеки.

Например: Язык разработки – С++

Среда разработки – Microsoft Visual Studio .NET 2003

Используемые библиотеки – OpenGL, glut.

6. Описание файловой структуры системы: перечень всех файлов программы с указанием классов, описанных в каждом из них.

Например:

solar.cpp – главный файл, интерфейс;

Planets.h и Planets.cpp – объявление и описание классов

CPlanets, CSolarPlanet и CSatellite;

Comet.h и Comet.cpp – объявление и описание класса

CComet; Sun.h – описание класса CSun;

CelestialBody.h – объявление класса CCelestialBody;

CelestialBody.cpp – описание класса

CCelestialBody; SolarSystem.h – объявление класса

CSolarSystem; SolarSystem.cpp – описание класса CSolarSystem.

7. Пользовательский интерфейс: вид диалоговых окон для ввода параметров моделирования и для визуализации моделируемого процесса или явления; описание функций основных элементов управления этих окон.

Например: клавиши управления визуализацией Солнечной системы:

W – увеличение масштаба изображения;

S – уменьшение масштаба изображения;

A – движение налево, D – движение направо области просмотра;

Мышью при зажатой левой кнопке – повороты тел;

+ и - – увеличение и уменьшение скорости движения тел;

O – отображение/скрытие орбит;

N – отображение/скрытие названий тел Солнечной системы;

1..9 – инициирует пролет кометы со скоростью от 1 до 9 скоростей Земли в точке восхождения;

Е – выход из системы.

4. Литература

1. Буч Г. Объектно-ориентированное проектирование с примерами применения. – М.: Конкорд, 1992.

2. Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на С++. – М.: Бином, 1998.

3. Буч Г., Максимчук Р., Энгл М. и др. Объектно-ориентированный анализ и проектирование с примерами приложений. – М.: Изд. дом «Вильямс», 2008.

4. Буч Г., Якобсон И., Рамбо Дж. UML. Классика CS. 2-е изд. - СПб.: Питер, 2006.

5. Г а м м а Э . , Х э л м Р . , Д ж о н с о н Р . , В лиссидес Дж. Приемы объектно-ориентированного проектирования. Паттерны проектирования. – СПб.: Питер, 2010.

6. Гультяев А.К., Машин В.А. Проектирование и дизайн пользовательского интерфейса. – СПб.: КОРОНА, 2000.

7. Рамбо Дж., Блаха М. UML 2.0. Объектно-ориентированное моделирование и разработка. 2-е изд. – СПб.: Питер, 2006.

51