46290

Проблема расширения функциональности в объектно-ориентированном подходе

Доклад

Информатика, кибернетика и программирование

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

Русский

2013-11-20

11.85 KB

0 чел.

15.Проблема расширения функциональности в объектно-ориентированном подходе.

Проблемы с расширением функциональности альтернатив

При добавлении нового обработчика специализации необходимо включить в

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

Далее требуется вставить во все производные классы методы, осуществляющие непосредственное вычисление периметров.

Проблемы при добавлении специализированных действий

Частный случай:

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

Использование объектно-ориентированного подхода

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

Возможные пути:

1. Использование динамического анализа типа объекта.

Но это – процедурный прием, так как используются внешние свойства объекта.

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

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


 

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

26781. Обобщение простейших формул численного интегрирования 188.5 KB
  Основные особенности протокола TCP. TCP Transfer Control Protocol протокол контроля передачи протокол TCP применяется в тех случаях когда требуется гарантированная доставка сообщений. Первая и последняя версия TCP RFC793 Transmission Control Protocol J. Модуль TCP нарезает большие сообщения файлы на пакеты каждый из которых передается отдельно на приемнике наоборот файлы собираются.
26782. Простейшие формулы численного интегрирования 276.5 KB
  Задача Коши для системы 4.13 может быть сведена к задаче Коши для системы дифференциальных уравнений. Системы можно разделять на классы по различным признакам. Цель любой классификации ограничить выбор подходов к отображению системы и дать рекомендации по выбору методов ее исследования.
26783. Методы отделения корней уравнения 140 KB
  Основной принцип технологии клиент сервер применительно к технологии баз данных заключается в разделении функций стандартного интерактивного приложения на 5 групп имеющих различную природу: функции ввода и отображения данных Presentation Logic; прикладные функции определяющие основные алгоритмы решения задач приложения Business Logic; функции обработки данных внутри приложения Database Logic функции управления информационными ресурсами Database Manager System; служебные функции играющие роль связок между функциями первых...
26784. Одномерные задачи оптимизации 95.5 KB
  Строки отношения называются кортежами. Количество атрибутов в отношении называется степенью или рангом отношения. Поэтому вводится понятие экземпляра отношения которое отражает состояние данного объекта в текущий момент времени и понятие схемы отношения которая определяет структуру отношения. Схемой отношения R называется перечень имен атрибутов данного отношения с указанием домена к которому они относятся: SR = А1 А2 Аn Аi Di Если атрибуты принимают значения из одного и того же домена то они называются Qсравпимыми где Q ...
26785. Численное дифференцирование. Древовидная структура доменных имен 83 KB
  Для организационных систем и ИС удобно в определении системы учитывать цели и планы внешние и внутренние ресурсы исполнителей непосредственно процесс помехи контроль управление и эффект. Интегративное свойство системы обеспечивает ее целостность качественно новое образование по сравнению с составляющими ее частями. Под элементом принято понимать простейшую неделимую часть системы. Любой элемент системы можно рассматривать как самостоятельную систему математическую модель описывающую какойлибо функциональный блок или аспект изучаемой...
26786. Задачи линейного программирования 432.5 KB
  Поэтому центральным понятием в области баз данных является понятие модели. В соответствии с рассмотренной ранее трехуровневой архитектурой мы сталкиваемся с понятием модели данных по отношению к каждому уровню. Физические модели данных основанные на страничной организации являются наиболее перспективными. Классификация моделей данных Наибольший интерес вызывают модели данных используемые на концептуальном уровне.
26787. Аппроксимация функций 112.5 KB
  Особенности данного этапа: Практически все современные СУБД обеспечивают поддержку полной реляционной модели а именно: структурной целостности допустимыми являются только данные представленные в виде отношений реляционной модели; языковой целостности то есть языков манипулирования данными высокого уровня в основном SQL; ссылочной целостности контроля за соблюдением ссылочной целостности в течение всего времени функционирования системы и гарантий невозможности со стороны СУБД нарушить эти ограничения. отделение организации от...
26788. Квадратичная аппроксимация (МНК) 85 KB
  Это значит: Создать механизм обеспечивающий сохранение анонимности точек зрения отдельных лиц и тем самым свести к минимуму влияние красноречивых и обладающих даром убеждать личностей на поведение группы в целом. Все взаимодействия между членами группы находятся под контролем со стороны координатора. Групповая оценка вычисляется им путем некоторого усреднения обычно посредством нахождения среднего значения или медианы и доводится до сведения всех членов группы. Метод Дельфы определяет следующий способ действий: Опросить каждого...
26789. Простейшие формулы численного интегрирования 2.9 MB
  Если есть три равноотстоящих узла то проводим через них параболу формула Симпсона: 1 3 x1x0y04y1y2 Общая классификация систем Системы можно разделять на классы по различным признакам. Можно классифицировать системы следующим образом: по виду отображаемого объекта технические биологические и др.; по виду формализованного аппарата представления системы детерминированные и стохастические; по типу целеустремленности открытые и закрытые; по сложности структуры и поведения простые и сложные; по степени...