ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 17.09.2024

Просмотров: 18

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Міністерство освіти і науки України

Сумський державний університет

Машинобудівний коледж

“Погоджено”

Глава циклової комісії спеціальності 5.05010101

_______________________

“____”_________________

“Затверджую”

Завідувач відділенням спеціальності 5.05010101

_______________________

“____”_________________

Курсова робота

З предмету «Об’єктно - орієнтована технологія програмування»

СПЕЦІАЛЬНІСТЬ 5.05010101

“Обслуговування програмних систем і комплексів”

Пояснювальна записка

Тема:______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Міністерство освіти і науки України

Сумський державний університет

Машинобудівний коледж

Дисципліна «Об’єктно - орієнтована технологія програмування»

Спеціальність 5.05010101 “ Обслуговування програмних систем і комплексів ”

Курс _______________ Група __________________ Семестр ______________ завдання на курсову роботу студента

______________________________________________________________________

(прізвище, ім’я, по батькові)

Тема роботи: __________________________________________________________

________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Практичне завдання: ___________________________________________________

______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Дата видачі завдання “____”______________2013 р.

Дата закінчення роботи “____”______________2013 р.


Керівник _____________________ _______________________

(підпис) (прізвище, ім’я, по батькові)

Завдання розглянуто на засіданні циклової комісії спеціальності 5.05010101

Протокол №________ від “____”____________2013 р.

Голова циклової комісії ___________________ _______________________

(підпис) (прізвище, ім’я, по батькові)

Зміст

1 Постановка задачі ……………………………………………………………………… 3

2 Алгоритм розробки програми ………………………………………………………… 4

3 Практична реалізація ………………………………………………………………..… 5

3.1 Опис структури даних та вимоги до неї ………………………………………… 5

3.2 Опис функцій користувача ……………………………………………………. 5

3.3 Опис файлів та їх призначення ………………………………………………….. 5

4 Інструкції для роботи з програмою …………………………………………………... 7

5 Приклади тестування роботи програми …………………………………………..8

6 Основні теоретичні відомості………………………………………………………9

Висновки ………………………………………………………………………………... 10

Література ………………………………………………………………………………. 11

Додаток А ……………………………….……………………………………………… 14

1 Постановка задачі

Определить объект TFish — аквариумная рыбка. Рыбка имеет координаты, скорость, размер, цвет, направление движения. Методами объекта являются:

-Init — включает графический режим, заполняет аквариум водой, камнями и рыбами.

-Draw — рисует рыбу в виде уголка с острием в точке Coord и направленного острием по ходу движения рыбы.

- Run — перемещает рыбу в текущем направлении на расстояние, зависящее от текущей скорости рыбы.


2 Алгоритм розробки програми

1 Створити форму проекту (Form1) та встановити на неї необхідні компоненти.

2 Описати клас «TFish»

3 Описати клас “ TAquarium” та його методи – “Init” та “Run”.

4 Описати функції-обробники.

3 Практична реалізація

3.1 Опис структури даних та вимоги до них

class TFish – клас “рибка”

class TAquarium – клас «акваріум»

TPoint Fpos – координати.

int Fspeed – швидкість риби.

int napram – напрям руху.

int Fpos_x - кординати риби по вісі х

int Fpos_y - кординати риби по вісі y

int i – лічильник циклів.

Graphics::TBitmap *Rubka - зображення риби

TFish ruba[10]- масив рибок.

3.2 Опис функцій користувача

void __fastcall Form::FormCreate(TObject *Sender) – функція обробки події створення форми.

void __fastcall Form::ButtonClick(TObject *Sender) – функція обробки події натиснення на кнопку.

void __fastcall Timer1Timer(TObject *Sender)- функція організації руху об’єкта.

void Init(TImage *Image1)- функція обробки графічного зображення.

void Run() – функція руху мешканців акваріума.

void povorot(TFish ruba) – функція зміни напряму риби.


3.3 Опис файлів та їх призначення

Progect1.bpr – файл проекту. Цей файл використовується

для зберігання інформації про форми та модулі. На ньому містяться оператори ініціалізації та запуску програми на виконання.

Progect1.exe – виконуваний файл проекту. Він є автономним виконуваним файлом, для якого більше нічого не треба.

Progect1.res – бінарний файл,який містить використовувані проектом ресурси.

Unit1.cpp – текстовий файл модуля, який відповідає формі Form1. Використовується для зберігання коду.

Unit1.dfm – файл,в якому зберігається інформація про зовнішній стан форми Form1, її розмірах, розміщенні на екрані.

Unit1.dcu – відкомпільований файл модуля Unit1.pas, який компонується в кінцевий робочий файл.

Аквамарин.bmp – зображення фону

т.bmp, н.bmp, тр.bmp, назад.bmp - зображення рибок.

4 Інструкції для роботи з програмою

Для початку роботи запустіть файл PROJECT.EXE, після чого з’явиться вітальне вікно програми.

На заставці програми буде дві кнопки, які будуть відповідати за наступні дії:

1 «Відобразити акваріум». За допомогою цієї кнопки перед вами відобразиться акваріум з її мешканцями, які рухаються в безперервному русі.

2 Якщо ви хочете закрити програму, натисніть на кнопку «Закрити».

5 Приклади тестування роботи програми

Мал. 1 «Початкова заставка»

Мал. 2 «Рух рибок»

6 Основні теоретичні відомості


В об'єктно-орієнтованому програмуванні, клас — це спеціальна конструкція об'єктно-орієнованої мови програмування, що використовується для групування пов'язаних змінних та функцій. При цьому згідно з термінологією ООП глобальні змінні класу (члени-змінні) називаються полями даних (також властивостями або атрибутами), а члени-функції називають методами класу. Створений та ініціалізований екземпляр класу називають об'єктом класу. На основі одного класу, може бути створено безліч об'єктів, які відрізнятимуться один від одного своїм станом (значеннями полів).

Клас можна порівнювати з формою для випічки печива — форма одна, а печива можна випекти безліч. Печиво — це конкретні об'єкти, екземпляри класу печиво, яке може бути з різною начинкою.Поля дозволяють вмістити дані про певний реальний об'єкт, а методи здійснювати обробку цих даних. Наприклад, можна створити загальний клас Людина з полями Ім'я та Прізвище, рік народження, професія, зарплата. При створенні ж на основі класу конкретного екземпляр дані поля заповнюються конкретними даними про певну людину. Обробкою цих даних може займатися відповідні методи. Наприклад, можна створити метод для обчислення віку людини і т.п.

На основі класів можна створювати підкласи, які успадковують властивості та поведінку батьківських класів. Можна створити цілу ієрархію класів. Різні мови дещо по

різному реалізовують механізм успадкування.

Через методи реалізується поведінка об'єктів. Практично вся робота з об'єктами відбувається через методи. Вони можуть змінювати стан об'єкта або ж просто надавати доступ до даних інкапсульованих в об'єкті. Існує кілька видів методів. До методів та полів даних можна надавати різні права доступу, від яких залежатиме доступу до них з різних частин програмного коду. Права доступу та вид методів задаються модифікаторами при описі методів. Метод, який проводить створення та початкову ініціалізацію екземпляра класу називають конструктором класу. Метод, який проводить знищення об'єкта, називають деструктором класу.