Cтраница 2
Каждый уровень может также обеспечивать некоторую абстракцию данных в системе. В системе управления данными один из уровней может представлять файл как древовидную структуру, изолируя тем самым действительную физическую структуру файла от всех других уровней. [16]
В этой главе мы продолжим изучение классов и абстракции данных. Обсуждение, проводимое в главах с 16 по 18, побуждает программистов к использованию объектов, показывая ряд их достоинств. Затем в главах 19 и 20 вводятся понятия наследования и полиморфизма, составляющих подлинную суть объектно-ориентированного программирования. [17]
Нужны типы данных более высокого уровня и другие средства абстракции данных, с помощью которых можно было бы без труда задать в каждом конкретном случае уместные понятия и подходящие объекты данных. Структуры и механизмы более высокого уровня дадут возможность отделить и скрыть детали более низкого уровня, которые с точки зрения осуществляемых действий и решаемых проблем являются несущественными. Прибегнув к ним, можно думать над задачей и программировать ее, пользуясь одинаковыми терминами, и, таким образом, сблизить языки, используемые машиной и человеком. [18]
В системах баз данных обычно имеют дело с иерархией абстракций данных. Поэтому уместно говорить об уровнях абстракции. Функциональный компонент СУБД, механизмы которого служат для поддержки некоторого уровня абстракции данных, естественно называть архитектурным уровнем СУБД. [19]
Данные способы могут быть применены не только для спецификации абстракций данных, но и для формального описания смысла. [20]
В процедурных методах и языках программирования понятие отношения используется для обозначения произвольной абстракции данных, например в языке запросов реляционной базы данных. [21]
Используя процедуры абстракции, определим более общую модель геоинформационных данных как абстракцию данных, которые содержатся на земной поверхности. Такой подход требует выделения основных типов данных и их многочисленных связей. [22]
Благодаря естественной расширяемости и открытости Лиспа в языке было просто определять новые типы данных и средства абстракции данных. [23]
Проделанный анализ возможностей абстракции данных в языке ПЛ / 1 позволяет утверждать, что некоторые идеи абстракции данных могут оказать положительное влияние на стиль программирования на языке ПЛ / i. Для этой цели подходят процедуры со многими точками входов. Структуры данных ( объекты) локализуются в таких процедурах. Операции над ними осуществляются через входные точки процедур, а структуры данных идентифицируются указателями. Правильность использования, указателей и защита данных могут быть осуществлены строгим соблюдением предложенной дисциплины программирования. [24]
Рассмотрим широко распространенный язык ПЛ / 1, в котором содержится ряд конструкций, позволяющих осуществлять некоторые идеи абстракции данных. Это структуры данных типа запись, переменные типа указатель ( POINTER), статический ( STATIC), базированный ( BASED) и управляемый ( CONTROLLED) классы памяти, вспомогательные точки входа ( ENTRY) в процедуры. Однако, как показано в работе [3], этих средств недостаточно для реализации идей абстрактных типов данных в полном объеме. [25]
Как было упомянуто выше, задачи могут быть использованы для группировки логически связанных процедур и, следовательно для реализации абстракции данных. Программист может определять заданные типы аналогично тому, как и любые другие, определяемые им типы. Таким образом, имеется возможность определить массив задач и передавать его в качестве параметра. [26]
При рассмотрении того, как избавиться от ненужных подробностей, ухудшающих удобство понимания и надежность программ, было упомянуто понятие абстракции данных. И здесь полезными оказываются процедуры. [27]
Одной из наиболее важных функций СУБД, оказавших решающее влияние на формирование сложившегося подхода к архитектуре таких систем, является обеспечение возможностей абстракции данных. Именно механизмы абстракции данных, предоставляемые СУБД, служат средством поддержки независимости способов видения базы данных различными группами системного персонала и пользователей. Это свойство системы, как уже отмечалось, называется независимостью данных. [28]
В распоряжении программиста имеется два уровня контроля над данными: контроль организации данных на уровне языка программирования, осуществляемый путем определения разного рода абстракций данных, и контроль представления данных на уровне используемых аппаратных средств. [29]
Абстрактные типы данных предлагают естественный способ разбиения программы на модули, спецификации и верификации модулей. С помощью абстракции данных можно упрощать программирование, уменьшая количество ошибок, и создавать более читаемые и легко модифицируемые программы, в которых можно менять структуры данных, не внося больших изменений в программы. [30]