46228

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

Доклад

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

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

Русский

2013-11-20

14.54 KB

1 чел.

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

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

Выделяются:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


Вывод

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

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

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


 

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

63744. Трудовые отпуска. Порядок предоставления трудовых отпусков 15.83 KB
  Отпуск временное освобождение от работы в будние дни на определённый период времени для отдыха и иных социальных целей с сохранением прежней работы. Порядок предоставления трудовых отпусков регулируется ст.
63745. Социальные отпуска 14.18 KB
  Работникам предоставляются следующие виды отпусков: трудовые отпуска. социальные отпуска: по беременности и родам; по уходу за детьми; в связи с обучением; в связи с катастрофой на Чернобыльской АЭС; по уважительным причинам личного и семейного характера.
63746. Понятие трудовой дисциплины. Меры и порядок применения дисциплинарных взысканий 15.49 KB
  Для отдельных категорий работников с особым характером труда могут предусматриваться также и другие меры дисциплинарного взыскания статья 204. Право выбора меры дисциплинарного взыскания принадлежит нанимателю. При выборе меры дисциплинарного взыскания должны учитываться тяжесть дисциплинарного...
63747. Рассмотрение трудовых споров 17.23 KB
  Индивидуальные трудовые споры по вопросам применения законодательства о труде коллективного договора соглашения рассматриваются: 1 комиссиями по трудовым спорам; 2 судами. Порядок рассмотрения индивидуальных трудовых споров Порядок рассмотрения индивидуальных трудовых...
63748. Условия привлечения к материальной ответственности. Виды материальной ответственности 13.3 KB
  Установлены следующие условия наступления материальной ответственности работника отсутствие хотя бы одного из них исключает наступление ответственности: наличие прямого действительного ущерба уменьшение имущества работодателя или ухудшение состояния этого имущества а также необходимость...
63749. Порядок возмещения материального ущерба 14.5 KB
  Порядок возмещения материального ущерба. Порядок возмещения ущерба причиненного нанимателю регламентируется ст. В соответствии с указанной статьей если доля члена коллектива бригады не превышает среднего месячного заработка возмещение ущерба производится...
63750. Понятие права и его функции. Сущность права. Система и источники права 15.57 KB
  Функции права это способы воздействия права на общественные отношения определяемые назначением права на различных этапах его исторического развития.
63751. Законность, правонарушение и юридическая ответственность 14.21 KB
  Влечёт за собой юридическую ответственность. Юридическая ответственность обязанность правонарушителя претерпеть неблагоприятные предусмотренные законодательством последствия совершенного им противоправного виновного деяния.
63752. Система законодательства Республики Беларусь. Законы и подзаконные нормативные правовые акты 15.66 KB
  Закон Республики Беларусь нормативный правовой акт закрепляющий принципы и нормы регулирования наиболее важных общественных отношений Ст. 2 Закона Республики Беларусь от 10 января 2000 года О нормативных правовых актах Республики Беларусь в редакции от 4 января 2002 года...