Теми робіт студентів по курсу ООП

Теми та орієнтовний зміст робіт на I сем. 2015-2016 н.р.

Не більше 1 людини на тему в 1 групі. Інформація щодо закріплених тем оновлюється раз на 1-2 доби. Велике прохання запити на перелік бажаних трьох тем у порядку пріоритету надсилати не на пошту, а через Issue Tracker у Bitbucket (див. інструкцію)

Оновлено 25.11.15 09:00

Редактор блок-схем. Створення, редагування, збереження блок-схем, пошук елементів на схемі (ДА-41 Когут, ДА-42 Худяков).

Редактор UML-діаграм класів. Створення, редагування, збереження UML-діаграм класів, можливість генерації “заготовок коду” (ДА-42 Приставський).

Редактор електричних схем.  Створення, редагування, збереження схем електричних кіл, можливість генерації опису на мові SPICE.

Редактор мереж Петрі.  Створення, редагування, збереження мереж Петрі, можливість їх покрокового моделювання (ДА-41 Кулик).

Редактор топологій комп’ютерних мереж.  Створення, редагування, збереження топологій комп’ютерних мереж (ДА-41 Степаніщева).

Редактор діаграм типу Mind map.  Створення, редагування, збереження діаграм (ДА-41 Рейфман).

Редактор діаграм.  Створення, редагування, збереження гістограм різних типів, побудованих на основі масиву вхідних даних (ДА-41 Грицай, ДА-42 Рудий).

Редактор нотного запису.  Створення, редагування, збереження нотних записів музичних композицій (ДА-41 Бондар, ДА-42 Пархоменко).

Редактор карт.  Створення, редагування, збереження багатошарових карт місцевості (ДА-41 Левочко).

Редактор планів приміщень.  Створення, редагування, збереження багатошарових ескізів планування приміщень (ДА-41 Кривицький).

Програма пошуку найкоротшого маршруту.  Створення, редагування, збереження схеми доріг різної якості та розрахунок найкоротшого маршруту по ним (ДА-41 Чапалюк, ДА-42 Герасименко).

Редактор формул.  Створення, редагування, збереження математичних формул (ДА-41 Королюк, ДА-42 Голуб).

Редактор веб-сторінок.  Створення, редагування, збереження простих HTML-сторінок з текстом, заголовками, малюнками (ДА-41 Яковчук, ДА-42 Панасюк).

Редактор розкладу занять.  Створення, редагування, збереження розкладу занять, пошук інформації, генерація таблиці розкладу у форматі HTML (ДА-41 Касьянчук, ДА-42 Літовко).

Органайзер Створення, редагування, збереження записів про події та заходи: час, місце, анотація, важливість, категорія, результат, пошук інформації, генерація табличного представлення у форматі HTML (ДА-41 Кулаковська, ДА-42 Кулівник).

Бібліотека публікацій.  Створення, редагування, збереження, пошук інформації про обрані наукові публікації, генерація таблиці у форматі HTML (ДА-41 Ковальчук, ДА-42 Ель Абдулла).

Галерея зображень.  Створення, редагування, збереження, пошук інформації про обрані зображення та анімовані послідовності зображень (ДА-41 Ліченко, ДА-42 Григоренко).

Довідник контактів.  Створення, редагування, збереження, пошук контактів (ДА-41 Галета, ДА-42 Кравчук).

Програма тестування знань.  Створення, редагування, збереження, виконання тестів різних типів (ДА-41 Єрошенко, ДА-42 Будьонний).

Ігрова програма “Морський бій”.  Гра проти людини або комп’ютера (ДА-41 Муратов, ДА-42 Балан).

Ігрова програма “Змійка”.  Гра проти комп’ютера. Ігрові об’єкти різних типів (ДА-41 Єременко, ДА-42 Хмарська).

Ігрова програма “Тетріс”.  Гра проти комп’ютера. Ігрові об’єкти різних типів (ДА-41 Пивоваров, ДА-42 Крупій).

Ігрова програма “Шахи”.  Гра проти людини з дотриманням всіх правил (ДА-41 Тарасевич, ДА-42 Шпрінгер).

Ігрова програма “Більярд”.  Гра проти людини. Кулі різних типів (ДА-41 Кремпоха, ДА-42 Бернацький).

Ігрова програма “Пакмен”.  Гра проти комп’ютера. Ігрові об’єкти (монстри, іжа) різних типів (ДА-41 Клещ, ДА-42 Стогнієнко).

Ігрова програма “Сапер”.  Гра проти комп’ютера. Ігрові об’єкти (міни, бонуси) різних типів (ДА-41 Куб’юк, ДА-42 Прощенко).

Ігрова програма “Балістика”.  Артилерійська “перестрілка”. Гра проти комп’ютера або людини. Ігрові об’єкти (зброя, перешкоди) різних типів (ДА-41 Бєлан).

Ігрова програма “Гелікоптери”.  Облетіти перешкоди та уразити супротивника. Гра проти комп’ютера або людини. Ігрові об’єкти (ветольоти, перешкоди) різних типів (ДА-41 Філімонов, ДА-42 Паляничко).

Ігрова програма-симулятор “Життя”.  Гра “Life” – клітинковий автомат. Ігрові об’єкти (клітинки) різних типів (ДА-41 Краштан, ДА-42 Шевчук).

Ігрова програма-симулятор “Екосистема”.  На ігровій карті переміщуються та взаємодіють хижаки та жертви різних типів (ДА-41 Бахмач, ДА-42 Рябчинський).


Короткий зміст завдань на лабораторні роботи та курсову роботу в рамках обраної теми

Лабораторна робота №1. Клас, його будова

Розробити та затвердити вимоги до програми у викладача. Скласти попередній перелік сутностей системи. Розробити інтерфейс та протестувати (введення команд з консолі, виведення реакції на команди) інтерфейс (7-10 методів) одного з головних класів програми.

Лабораторна робота №2. Проектування класів програмної логіки

Розробити ієрархію основних класів програмної логіки (орієнтовно 5-7 класів). Пов’язати їх з головним класом програми. Розробити розроблену систему класів так, щоб вона містила відношення агрегації або композиції, а також наслідування (скласти UML-діаграму класів). Рішення щодо поєднання класів ієрархічними відношеннями мають бути обгрунтовані. Реалізувати поліморфну поведінку за допомогою механізму віртуальних функцій. Продемонструвати функціонування об’єктів за допомогою тестового коду. Реалізація окремих методів класів логіки може бути неповною.

Лабораторна робота №3. Розширення класів програмної логіки

Шляхом доцільного застосування шаблонів проектування (design patterns) розширити функціонал програми (напр., для реалізації збереження даних). Завершити реалізацію класів логіки програми, продемонструвати повне покриття вимог завдання за допомогою тестового коду.

Курсова робота. Розробка програми з графічним інтерфейсом користувача.

Розробити графічний інтерфейс користувача (бібліотека Qt) для керування розробленою в рамках лабораторних робіт логікою програми. Зміни в існуючій ієрархії класів та вже розроблених реалізаціях методів не дозволяються без обгрунтованих підстав.