Cтраница 2
Новые абстрактные типы данных, созданные в средах разработки C, могут быть собственностью отдельных программистов, небольших групп или компаний. Абстрактные типы данных могут также помещаться в стандартные библиотеки классов, предназначенные для широкого распространения. Это не обязательно способствует распространению стандартов, хотя de facto делает появление стандартов вполне вероятным. В полной мере значение языка C будет осознано только тогда, когда станут широко доступными большие стандартизованные библиотеки классов. Должен быть инициирован формальный процесс, способствующий разработке стандартизованных библиотек. В Соединенных Штатах такая стандартизация часто происходит благодаря ANSI, Американскому национальному институту стандартов. Независимо от того, каким образом, в конечном счете, появятся эти библиотеки, читатель, изучающий C и объектно-ориентированное программирование, будет готов воспользоваться преимуществами новых видов ускоренной, ориентированной на компоненты разработки программного обеспечения, которую делают возможной библиотеки абстрактных типов данных. [16]
Такая абстракция могла бы иметь форму конкретного экземпляра ( реализации) пакета; содержащиеся в нем процедуры - операции ввода-вывода. Каждый вызов вводной или выводной программы вызывает выполнение соответствующей операции ввода-вывода из желаемого экземпляра пакета. Возможность динамического выбора желаемого пакета ввода-вывода существует, если имеется расширение языка с помощью введения типа пакет, потому что экземпляр пакета получает статус значения языка Ада, которое может быть передано подпрограмме в качестве аргумента. [17]