Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
met_kurs_Луганськ.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
100 Кб
Скачать
☆

3.6.3 Розробка методів

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

Так, метод "перемісти мене" (див. приклад у попередньому пункті) повинен лише змінити координати активного видимого елемента, а не намагатися перемалювати його самостійно — метод "відобрази себе" зробить це набагато краще.

Аналогічно метод "відобрази себе" для "групи" (шахової дошки чи клітинки), який повинен відображати об'єкти Групи після того, як відобразилася сама група, реалізується з використанням поліморфізму та успадкування. При цьому додається лише один-два оператори, оскільки і ґрупа, і видимі елементи вже самі вміють відображатися, необхідно лише "сказати" їм, щоб вони це зробили один за одним. У методі "відобрази себе" групи спочатку викликається метод "відобрази себе" базового класу ("видимий елемент"), який відображає саму дошку або клітинку, а далі — методи "відобрази себе" для всіх видимих елементів, що входять до групи. Для клітинки Це буде виклик "відобрази себе" для фігури, що стоїть на клітинці, а для дошки — виклик "відобрази себе" для всіх позначок та клітинок, які, у свою чергу, відобразять фігури, що на них знаходяться.

У даному підрозділі слід описати принцип дії основних методів та відмінності поліморфних (віртуальних) методів від методів базових класів.

3.6.4 Створення об'єктів і розробка головної програми

Нарешті, У цьому підрозділі слід описати процес створення самих об'єктів у програмі, функціональність та дані яких розроблені в попередніх підрозділах. Якщо кількість об'єктів, що будуть створені наперед невідома, або обсяг пам'яті, яку вони займають, є досить значним, тоді пам'ять для об'єктів слід виділяти "динамічно" з використанням оператора new.

Стосовно розглянутого прикладу із шахами, даний підрозділ, очевидно буде описувати, як створюється шахова дошка з 32 фігурами на ній та як перетворюються вибрані партнерами ходи в повідомлення шаховим фігурам.

Створивши об'єкти, можемо реалізувати певну послідовність дій або схему взаємодії між об'єктами, яка призводить до вирішення поставленого завдання.

Опис цієї послідовності дій чи схеми взаємодії, можливо, з прикладами для реальних вхідних даних чи повідомлень і є основою даного підрозділу. Такий опис повинен бути достатнім для розуміння всіх деталей реалізації алгоритму та можливих випадків, що зустрічаються при роботі програми.

3.6.5 Опис файлів даних та інтерфейсу програми

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

Можна додавати до нього приклади реальних файлів із даними програми.

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

Для інтерактивної програми з розвинутою системою меню та діалогових вікон у цьому підрозділі слід описати призначення елементів меню, роботу з ними, параметри, що вибираються в діалогових вікнах тощо. У цьому ж розділі слід описати інтерфейс програм, які працюють з параметрами командного рядка.

Якщо темою роботи є розробка модулів або бібліотеки, то слід детально описати порядок їх використання, навести в алфавітному порядку всі доступні для користувача глобальні типи даних і змінні, функції та класи.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]