46228

Вариантные обобщения

Доклад

Логика и философия

Вариантные обобщения. Обобщение данных состоит из основы обобщения к которой присоединяются различные основы специализаций. Но чаще всего обобщения на основе общего ресурса строится таким образом что начальный адрес для всех размещаемых объектов является одинаковым. Вариантное обобщение Вариант основа обобщения данных в процедурном подходе.

Русский

2013-11-20

14.54 KB

1 чел.

11. Вариантные обобщения.

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

Выделяются:

Обобщение данных и обобщение процедур (процедурное обобщение).

Обобщение данных состоит из основы обобщения, к которой присоединяются различные основы специализаций.

Методы формирования обобщений

При обобщении на основе общего ресурса происходит размещение специализаций в едином адресном пространстве.

При этом обычно существует часть ресурса, одновременно перекрываемая всеми размещаемыми программными объектами.

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

Образное обобщение

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

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

Вариантное обобщение

Вариант - основа обобщения данных в процедурном подходе. Обобщение, применяемое в процедурном подходе и построенное на основе варианта, назовем вариантным обобщением.

С каждым вариантом связан набор специализаций обобщения, построенный на основе уже существующих абстракций (основ специализаций). Определим их как вариантные специализации.

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

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

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

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


Вывод

Вариантные обобщения на основе общего ресурса формируются при написании программы и распознаются во время трансляции. Это позволяет заранее распределить память и обеспечить быстрый  и непосредственный доступ к отдельным экземплярам.

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

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


 

А также другие работы, которые могут Вас заинтересовать

42078. Исследование процессов самотестирования компьютерной системы при включении (POST) 294 KB
  Анализ алгоритмов тестирования клавиатуры CMOSпамяти и спикера и выявление особенностей процессов их диагностики. Задача: Ознакомиться и выучить алгоритмы тестирования клавиатуры CMOSпамяти и спикера с учетом выявленных особенностей процессов их диагностики. Результаты: Отчет по лабораторной работе с описанием особенностей процессов диагностики клавиатуры CMOSпамяти и спикера. Имеется в виду программа POST и контроль четности памяти.
42079. Теоретичні основи організації обчислювальних процесів і режимів функціонування ЕОМ 327.5 KB
  Інтенсивний розвиток мікроелектронних технологій збільшення ступеня інтеграції мікросхем процесорів пам'яті контролерів і т. Ціль: Аналіз алгоритмів тестування клавіатури CMOSпамяті і спікера й виявлення особливостей процесів їхньої діагностики. Завдання: Ознайомитися й вивчити алгоритми тестування клавіатури CMOSпамяті і спікера з урахуванням виявлених особливостей процесів їхньої діагностики. Результати: Звіт з лабораторної роботи з описом особливостей процесів діагностики клавіатури CMOSпамяті і спікера.
42080. Расчет ожидаемых значений и отклонений с использованием простых компьютерных программ 35 KB
  Рассчитать среднее число попаданий. Рассчитать стандартное отклонение. Рассчитать дисперсию. Рассчитать смещенное стандартное отклонение.
42081. Основные понятия комбинаторики 2.58 MB
  В появившемся диалоговом окне Мастер функции шаг 1 из 2 слева в поле Категория указаны виды функции. В поле Функции выбираем функцию ФАКТР . В рабочее поле Число вводим с клавиатуры число переставляемых объектов в примере 26. В появившемся диалоговом окне Мастер функции шаг 1 из 2 слева в поле Категория указаны виды функции.
42083. Обработка базы данных с помощью Microsoft Office Excel 1.15 MB
  Приведенная ниже база данных служащих является выборочным пространством некоторого случайного эксперимента, в котором работник выбирается выборочным(случайным) способом. Будем считать, что один работник представляет один результат эксперимента и все возможные результаты равновероятны.
42086. Измерение коэффициента нелинейных искажений 160 KB
  Ознакомиться с техническими описаниями и инструкциями по эксплуатации применяемых в работе приборов: измерителя нелинейных искажений ИНИ осциллографа. Собрать схему исследования нелинейных искажений для чего подать напряжение на вход четырёхполюсника от генератора сигналов встроенного в ИНИ выход четырёхполюсника соединить со входом ИНИ и осциллографа. Измерители нелинейных искажений измеряют непосредственно коэффициент .