Головна

Реорганізація ієрархії і структури класів

  1.  I. ВАРІАЦІЇ забарвлення і СТРУКТУРИ ШЕРСТІ
  2.  I. Файлові структури, використовувані для зберігання даних в БД
  3.  А. Кардинер: концепція основний особистісної структури.
  4.  Абсолютні і відносні показники зміни структури
  5.  Адаптивні і механістичні організаційні структури
  6.  адаптивні структури
  7.  Адаптивні структури управління

Це крок 2 етапи проектування. При реорганізації ієрархії і структури класів застосовують чотири процедури:

- Узагальнення (декомпозиція класів);

- Розщеплення (локалізація класів);

- Злиття (об'єднання класів);

- Використання бібліотек класів.

Узагальнення (декомпозиція класів) - Це виявлення в групі класів загальних елементів і винесення їх в загальний базовий клас. Ознаками необхідності узагальнення є:

- Загальна схема використання;

- Схожість між наборами операцій;

- Схожість реалізації.

Розщеплення (локалізація класів) - Це поділ класу на кілька класів. Розщеплення застосовується в наступних випадках:

- Наявний складний клас має сенс розділити на кілька простих класів і тим самим забезпечити поетапну розробку;

- Клас містить ряд незв'язаних між собою функцій або набір незалежних один від одного даних.

Злиття (об'єднання класів) - Це об'єднання декількох невеликих, але тісно взаємодіючих класів в один. Таким чином, взаємодія буде приховано в реалізації нового класу.

Використання бібліотек класів - Це інтегрування класів в новий проект з існуючого проекту. Чим більше готових бібліотечних класів буде використано в програмі, тим менше коду доведеться писати при реалізації програми.

Аналіз структури класів akt і cena дозволяє виділити їх загальну частину, що стосується індексному масиву, в новий базовий клас ind. Клас ved, будучи похідним від класів akt і cena, успадковує елементи-дані цих класів. Тому, видалимо їх із класу ved.

Реорганізована ієрархія класів - на рис. 4.3.

CIndex

/ \

CAkt CCena

\ /

CVed

Мал. 4.3. Реорганізована ієрархія класів

Клас ved необхідний тільки для створення вихідний відомості і не має ніяких інших функцій. Тому, можна спростити структурну схему програми, скасувавши клас ved, а вихідна відомість може бути реалізована функцією діалогового вікна виведення відомості. Тоді обрана ієрархія класів може бути представлена ??на рис. 4.4.

CIndex

/ \

CAkt CCena

Мал. 4.4. Остаточна ієрархія класів

 




 Конструктори і деструктори |  похідний клас |  Просте і множинне спадкування |  Віртуальні базові класи |  перевантаження операцій |  Перетворення типів, що визначаються класом |  перевантаження функцій |  Віртуальні елементи-функції |  параметричний поліморфізм |  Постановка завдання та визначення специфікацій |

© um.co.ua - учбові матеріали та реферати