Независимость от представления

Независимость от представления

Динамическое связывание связано с одним из принципиальных аспектов повторного использования: независимостью от представления, т.е. возможностью запрашивать исполнение некоторой операции, имеющей несколько вариантов, не уточняя, какой из них будет применен. В предыдущей лекции при обсуждении этого понятия использовался пример вызова

present := has (x, t)

который должен применить подходящий алгоритм поиска, зависящий от вида t во время выполнения. Если t объявлена как таблица, но может присоединяться к экземпляру бинарного дерева поиска, хеш-таблице и т. п. (в предположении, что все необходимые классы доступны), то при динамическом связывании вызов

present := t.has (x)

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

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

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

7.4.3. Независимость и организационная структура

Из книги Модель зрелости процессов разработки программного обеспечения автора Паулк Марк

7.4.3. Независимость и организационная структура Организация должна следить за корректностью интерпретации и выполнения ключевых практик, реализующих концепцию независимости. Это имеет особенно большое значение для небольших проектов и организаций. Если технические


4.3. Способы представления данных

Из книги Отладка систем реального времени [Обзор] автора Костюхин К А

4.3. Способы представления данных Существуют разные способы представления данных. ([7],[13]). Наиболее распространенный из них - графический. Например, Panorama предоставляет следующие возможности (предполагается, что система использует в качестве механизма связи сообщения): •


Окно трехмерного представления

Из книги Домашний архитектор. Подготовка к ремонту и строительству на компьютере автора Булат Виталий

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


24. Различные представления графа

Из книги Информатика и информационные технологии автора Цветкова А В

24. Различные представления графа Для реализации графа в виде списка инцидентности можно использовать следующий тип:Type List = ^S;S = record;inf: Byte;next: List;end;Тогда граф задается следующим образом:Var Gr: array[1..n] of List;Теперь обратимся к процедуре обхода графа. Это вспомогательный


Платформенная независимость .NET

Из книги Язык программирования С# 2005 и платформа .NET 2.0. [3-е издание] автора Троелсен Эндрю

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


Независимость данных и программ

Из книги Основы AS/400 автора Солтис Фрэнк

Независимость данных и программ Использование комбинации физических и логических файлов в AS/400 позволяет достичь независимости программ от используемых ими данных. Отделение описания данных от программ достигается тем, что прикладные программы рассматривают данные в


2.10. Представления

Из книги Феномен науки. Кибернетический подход к эволюции автора Турчин Валентин Фёдорович


Независимость Представлений

Из книги Основы объектно-ориентированного программирования автора Мейер Бертран

Независимость Представлений Общая структура повторно используемого модуля должна позволять модулям-клиентам определять свои действия при отсутствии сведений о реализации модуля. Это требование называется Независимостью Представлений. Предположим, что


Представления стеков

Из книги Внедрение SAP R/3: Руководство для менеджеров и инженеров автора Кале Вивек

Представления стеков Существует несколько физических представлений стеков: Рис. 6.1.  Три возможных представления стековЭтот рисунок иллюстрирует три наиболее популярных представления стеков. Для удобства ссылок дадим каждому из них свое имя:[x]. МАССИВ_ВВЕРХ:


Интерфейс представления

Из книги Программирование на языке Пролог для искусственного интеллекта автора Братко Иван

Интерфейс представления Интерфейс представления управляет функционированием и внешним видом пользовательского интерфейса и обеспечивает следующие характеристики:• Возможность индивидуальных пользовательских настроек• Простоту обучения и


13.2. Примеры И/ИЛИ-представления задач 

Из книги Linux программирование в примерах автора Роббинс Арнольд

13.2. Примеры И/ИЛИ-представления задач  13.2.1. И/ИЛИ-представление задачи поиска маршрута Для задачи отыскания кратчайшего маршрута (рис. 13.1) И/ИЛИ-граф вместе с функцией стоимости можно определить следующим образом:• ИЛИ-вершины представляются в форме X-Z, что означает:


13.4.2. Представления многобайтных символов

Из книги Язык Си - руководство для начинающих автора Прата Стивен

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


Выбор представления данных

Из книги Мир InterBase. Архитектура, администрирование и разработка приложений баз данных в InterBase/FireBird/Yaffil автора Ковязин Алексей Николаевич

Выбор представления данных      Как мы представляем группу чисел? Можно использовать группу переменных, по одной на каждое число. Об этом даже страшно подумать. Можно использовать массив, по одному элементу на каждое число. Это значительно лучше, поэтому давайте


Модифицируемые представления

Из книги UNIX: разработка сетевых приложений автора Стивенс Уильям Ричард

Модифицируемые представления Выше мы упомянули о том, чт. е. возможность создавать изменяемые представления данных. Это действительно так - существует возможность не только читать данные из представления, но и изменять их!Есть два способа сделать представление


1.3. Независимость от протокола

Из книги автора

1.3. Независимость от протокола Наша программа, представленная в листинге 1.1, является зависимой от протокола (protocol dependent) IPv4. Мы выделяем и инициализируем структуру sockaddr_in, определяем адрес как относящийся к семейству AF_INET и устанавливаем первый аргумент функции socket равным