Отчет о выполнении задания практикума
Текст отчета должен включать следующие разделы: 1. Уточнение постановки задачи для выбранного варианта задания, при необходимости – описание математической модели процесса или явления. Например: Демонстрационная модель солнечной системы. Смоделировать на основе законов Кеплера движение планет Солнечной системы и пролет кометы через нее с заданной скоростью.
2. Диаграмма классов, показывающая выделенные классы и связи между ними.
3. Текстовые спецификации основных классов системы. Например, для одного из классов: Клас SolarSystem Элементы данных: - количество планет в системе; - количество комет в системе; - …
Функции: - пересчет положения объектов – на каждой итерации таймера функция рассчитывает положения небесных тел (планет, астероидов, комет, …) в модели Солнечной системы. - добавление тела в систему – функция принимает данные об орбите, скорости, … нового небесного тела и добавляет его в список тел, уже присутствующих в модели. - удаление тела из системы - … - …
//Интерфейс класса, представляющего Солнечную систему 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. Пользовательский интерфейс: вид диалоговых окон для ввода параметров моделирования и для визуализации моделируемого процесса или явления; описание функций основных элементов управления этих окон. Например: клавиши управления визуализацией Солнечной системы: W – увеличение масштаба изображения; S – уменьшение масштаба изображения; A – движение налево, D – движение направо области просмотра; Мышью при зажатой левой кнопке – повороты тел; + и - – увеличение и уменьшение скорости движения тел; O – отображение/скрытие орбит; N – отображение/скрытие названий тел Солнечной системы; 1..9 – инициирует пролет кометы со скоростью от 1 до 9 скоростей Земли в точке восхождения; Е – выход из системы. Литература
1. Буч Г. Объектно-ориентированное проектирование с примерами применения. – М.: Конкорд, 1992. 2. Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на С++. – М.: Бином, 1998. 3. Буч Г., Максимчук Р., Энгл М. и др. Объектно-ориентированный анализ и проектирование с примерами приложений. – М.: Изд. дом «Вильямс», 2008. 4. Буч Г., Якобсон И., Рамбо Дж. UML. Классика CS. 2-е изд. - СПб.: Питер, 2006. 5. Гамма Э., Хэлм Р., Джонсон Р., Влиссидес Дж. Приемы объектно-ориентированного проектирования. Паттерны проектирования. – СПб.: Питер, 2010. 6. Гультяев А.К., Машин В.А. Проектирование и дизайн пользовательского интерфейса. – СПб.: КОРОНА, 2000. 7. Рамбо Дж., Блаха М. UML 2.0. Объектно-ориентированное моделирование и разработка. 2-е изд. – СПб.: Питер, 2006.
|