Сборники трудов ИСП РАН


Концепция наследования в современных языках программирования

Канатов А.В. (Исследовательский центр Samsung, Москва), Зуев Е.А (Исследовательский центр Samsung, Москва)

Аннотация

Статья содержит обзор и анализ реализаций понятия наследования в современных промышленных языках программирования. Исследуются достоинства и недостатки механизмов наследования в таких языках, как С++, Java, C# и Eiffel и других, анализируются их особенности и ограничения моделей наследования, реализованных в этих языках.
На основе проведенного анализа в статье предлагается альтернативный подход к трактовке наследования, который сочетает общность и гибкость множественного наследования и простоту практического применения для целей повторного использования кода. Суть предлагаемого подхода заключается в переносе контроля валидности полного графа наследования на этап обработки обращений к свойствам класса на основе анализа перекрытий (overriding) и контроля подобия (conformance) сигнатур свойств.
Предложенный подход может быть реализован как дополнение к какому-либо существующему языковому инструменту, так и в виде независимой реализации.

Ключевые слова

множественное наследование, переопределение (overriding) конфликт имен и версий, понятие источника свойства (origin and seed)

Издание

Труды Института системного программирования РАН, том 27, вып. 6, 2015, стр. 169-188.

ISSN 2220-6426 (Online), ISSN 2079-8156 (Print).

DOI: 10.15514/ISPRAS-2015-27(6)-12

Полный текст статьи в формате pdf Вернуться к содержанию тома