46228

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

Доклад

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

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

Русский

2013-11-20

14.54 KB

1 чел.

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

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

Выделяются:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


Вывод

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

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

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


 

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

37273. Правоохранительные органы 175 KB
  Проработка включенных в программу тем дает отправные знания о понятии правоохранительной деятельности и её значении в российской правовой системе основных направлениях функциях и органах осуществляющих её о судебной власти правосудии и судах их построении и основных полномочиях об организационном обеспечении деятельности судов и органах его осуществляющих о прокурорском надзоре и прокуратуре о выявлении и расследовании преступлений и занимающихся этим учреждениях об адвокатской деятельности и адвокатуре иных формах оказания...
37274. Применение языка PHP, СУБД MySQL и фреймворка CodeIgniter для разработки динамических веб-сайтов 959 KB
  Курсовая работа посвящена возможностям применения языка PHP, системы управления базами данных (СУБД) MySQL, фреймворка CodeIgniter для разработки динамических веб-сайтов. Апробация данных технологий проводится на примере создания фронт-части (front-end) веб-сайта для сети мебельных магазинов «Комфорт+»
37275. Розрахунок і конструювання монолітного ребристого залізобетонного перекриття з балочними плитами 2.33 MB
  0184 Визначення кількості стержнів армування Розрахунок і конструювання другорядної балки Розрахункова схема балки Статичний розрахунок балки Уточнення розмірів перерізу балки Розрахунок міцності балки в нормальних перерізах Розрахунок міцності балки в похилих перерізах Розрахунок на дію поперечної сили Розрахунок на дію згинального моменту Побудова обгинаючої епюри моментів Побудова епюри матеріалів Конструювання перерізу 11 Конструювання перерізу 22 Конструювання перерізу 33 Розрахункові перерізи для епюри...
37276. Исследование методов и алгоритмов работы трансляторов предметно-ориентированных языков 889.5 KB
  Для описания семантических функций синтаксической диаграммы расстановки ссылок использованы следующие обозначения: Tb_Lexems[.Code массив кодов лексем; Tb_Lexems[.Vlue массив значений лексем; Number_Lexem номер очередной рассматриваемой лексемы в массиве лексем; Stek_do стек для циклов WHILE; Stek_if стек для развилок IF; Stek_cse – стек для операторовпереключателей SWITCH; Stek_to – стек для циклов FOR. Рисунок 3 Рсхема расстановки ссылок Семантические функции к Рсхеме расстановки ссылок на рисунке 3: y0:...
37277. Багатоповерхова каркасна будівля 525.5 KB
  Розрахунок та конструювання другорядної балки. Розрахункова схема балки. Статичний розрахунок балки. Конструктивний розрахунок допоміжної балки.
37278. Теория государства и права, учебник 4.32 MB
  Садовничий ректор Московского университета академик РАН профессор Введение Вопросам теории государства и права в отечественной и зарубежной юридической литературе традиционно уделяется большое внимание. Определение и основное разделение права М. Лекции по общей теории права СПб.
37279. ПРИМЕНЕНИЕ ТЕХНОЛОГИЙ JAVA И JAVAFX ДЛЯ РАЗРАБОТКИ ВИРТУАЛЬНЫХ ЛАБОРАТОРИЙ МАТЕМАТИЧЕСКОГО МОДЕЛИРОВАНИЯ 912.5 KB
  Методы моделирования в настоящее время внедрились практически во все сферы человеческой деятельности: технические, социально-экономические, сложные экономические, общественные, сферы международных отношений и др. Это связано с необходимостью расширения и углубления знаний реального мира. Существует множество реальных объектов и процессов, информацию о которых мы не можем получить из-за малости или масштабности размеров (объекты микро- и макрокосмоса); высоких или криогенных температур.
37281. Бухгалтерский и налоговый отчет в компании ООО «Экопласт» 423 KB
  Эти взаимоотношения основаны на различных денежных расчетах в процессе заготовления производства и реализации продукции товаров работ или услуг. Учет поступления товаров Дадим определение товаров на основании нормативных документов применяемых в Российской Федерации. Все операции куплипродажи товаров осуществляются на основании договора куплипродажи и его разновидностей договор поставки договор розничной куплипродажи и т. Основными целями бухгалтерского учета товарных операций является: своевременное и полное отражение на счетах...