ВУЗ:
Составители:
16
Рис. 2.2. Иерархия агрегации
Агрегация на уровне типов предполагает множество агрегаций на уров-
не знаков. Некоторый тип может выступать и как обобщение, и как агрегат од-
новременно. Например, тип ЛИЧНОСТЬ есть обобщение двух типов служащий
и студент. В то же время тип ЛИЧНОСТЬ является одновременно агрегатом
свойств ФИО, ВОЗРАСТ, АДРЕС (см. рис. 2.1).
Агрегация позволяет раскрыть структуру объектов. Допускается много-
кратное применение агрегации. Процесс обратный агрегации носит название
пошаговой детализации и широко применяется в программировании.
Обобщение и агрегация соотносятся с понятиями ЕСТЬ_ЧАСТЬ и
ЕСТЬ_НЕК, используемыми в проблематике искусственного интеллекта. Поня-
тие ЕСТЬ_ЧАСТЬ выражает тот факт
, что тип объекта есть агрегат других ти-
пов (например, ФАМИЛИЯ ЕСТЬ_ЧАСТЬ СЛУЖАЩИЙ). Понятие ЕСТЬ_НЕК
выражает факт обобщения одним типом объекта другого типа объекта (напри-
мер, СЛУЖАЩИЙ ЕСТЬ_НЕК ЛИЧНОСТЬ). Оба эти понятия определяют свя-
зи между типами, подразумевающие и связи между знаками. Однако на уровне
знаков эти понятия,
как правило, не употребляются.
Абстракции неформально давно применяются в управлении данными:
агрегация – при конструировании файла для группирования полей в запись,
обобщение – для представления множества записей общим типом объекта –
файлом, а также для выборки из файла подмножества записей. Агрегация и
обобщение могут применяться взаимодополняющим образом и выражать струк-
турные и классификационные аспекты
типизации. Структуру типа можно пред-
ставить как агрегат базовых типов, а сам агрегат может служить объектом
обобщения (классификации). Классификация типов может быть выражена ие-
рархией обобщения, а структура – иерархией агрегации. Рис. 2.3 иллюстрирует
абстракцию личности.
личность
студент служащий
зарплата
адрес фамилия возраст
удержания подразделение курс стипендия задолженности
Страницы
- « первая
- ‹ предыдущая
- …
- 14
- 15
- 16
- 17
- 18
- …
- следующая ›
- последняя »