Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

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



Это шаг 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. Окончательная иерархия классов





Дата публикования: 2014-11-26; Прочитано: 211 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...