Ада-95. Компилятор GNAT



              

Сущность абстрактного типа данных


Суть абстракции данных заключается в определении типа данных как множества значений и множества операций для манипулирования этими значениями.

Таким образом, какой-либо абстрактный тип данных является простым формальным именем типа для которого определено множество допустимых значений и множество допустимых операций.

Программу, которая использует абстрактный тип данных, называют клиентской программой.

Такая программа может описывать объекты абстрактного типа данных и использовать различные операции над этим типом данных.

Причем, клиентская программа не нуждается в детальной информации как о внутреннем представления типа данных, так и о фактической реализации операций над этим типом данных.

Все эти детали могут быть скрыты от клиентской программы.

Таким образом достигается разделение использования типа данных и операций над ним от деталей внутреннего представления данных и реализации операций.

Другими словами, такой подход позволяет отделить то что предоставляет определенный тип данных в качестве сервиса от того как этот сервис реализован.

Такой подход предоставляет определенные преимущества, позволяя осуществлять независимую разработку как клиентской программы, так и абстрактного типа данных.

Например, изменение реализации какой-либо операции над абстрактным типом данных не требует внесения изменений в клиентскую программу.

Кроме того, мы можем изменять представление внутренней структуры данных абстрактного типа данных без необходимости изменения клиентской программы.

Абстрактный тип данных является одним из видов повторно используемого программного компонента, который может быть использован большим количеством клиентских программ.

Абстрактный тип данных не нуждается в информации о клиентской программе, которая его использует, а клиентская программа не нуждается в информации о внутреннем устройстве абстрактного типа данных.

Таким образом абстрактный тип данных можно рассматривать как своеобразный "черный ящик".

Использование абстрактных типов данных облегчает построение крупных программных проектов, поскольку они, как правило, располагаются в библиотеках программных ресурсов, что позволяет избавиться от необходимости бесконечно "изобретать колесо".




Содержание  Назад  Вперед