Е.В. Рогачева
ИСПОЛЬЗОВАНИЕ ИНТЕРФЕЙСОВ В ОБЪЕКТНО-ОРИЕНТИРОВАННЫХ
ЯЗЫКАХ ПРОГРАММИРОВАНИЯ
Самарский государственный университет
В настоящее время при изучении объектно-ориентированных языков программирова-ния основное внимание уделяется проектированию и кодированию собственно классов, а также иерархий классов.
Действительно, когда программный проект разрабатывается «с нуля», большая часть проблем может быть решена на этапе проектирования системы классов. Существующие ме-тодики [1, 2] позволяют выявлять недоработки на ранних стадиях развития проекта, что дает возможность прибегнуть к частичному перепроектированию, не сопряженному с серьезными временными и иными затратами.
Однако применить на практике такой подход можно далеко не всегда. Например, ко-гда существует набор созданных разными разработчиками протестированных классов, не имеющих общего класса-предка с нужной функциональностью, вряд ли его следует признать оправданным. Таким образом, проблема заключается в том, чтобы экземпляры разных клас-сов в некоторые моменты времени выполнения программы представали как сущности с еди-ным набором характеристик. Иная формулировка этой проблемы такова: некий объект в раз-личные моменты времени выполнения программы разрешено трактовать как относящийся к разным классовым типам.
Современные объектно-ориентированные языки программирования предлагают, по сути, два пути решения подобных проблем. Так, язык C++ допускает множественное насле-дование, позволяя тем самым производному классу объединить в себе данные и методы двух (или, возможно, более) базовых классов. Нельзя не заметить, что если базовые классы явля-ются полнофункциональными, то производный класс оказывается существенно «утяжелен-ным», наделенным излишними (и, не исключено, двусмысленными) характеристиками. При всей привлекательности идеи множественного наследования в большинстве практических разработок (в том числе в системе базовых классов самого языка C++) используется все же единичное наследование [3].
Полный вариант статьи вы можете заказать за 50 руб.
Варианты оплаты