|
Концепция наследования в современных языках программирования
А. В. Канатов, Е. А. Зуев Исследовательский центр Samsung
Аннотация:
Статья содержит обзор и анализ реализаций понятия наследования в современных промышленных языках программирования. Исследуются достоинства и недостатки механизмов наследования в таких языках, как С++, Java, C# и Eiffel и других, анализируются их особенности и ограничения моделей наследования, реализованных в этих языках. На основе проведенного анализа в статье предлагается альтернативный подход к трактовке наследования, который сочетает общность и гибкость множественного наследования и простоту практического применения для целей повторного использования кода. Суть предлагаемого подхода заключается в переносе контроля валидности полного графа наследования на этап обработки обращений к свойствам класса на основе анализа перекрытий (overriding) и контроля подобия (conformance) сигнатур свойств. Предложенный подход может быть реализован как дополнение к какому-либо существующему языковому инструменту, так и в виде независимой реализации.
Ключевые слова:
множественное наследование, переопределение (overriding) конфликт имен и версий, понятие источника свойства (origin and seed).
Образец цитирования:
А. В. Канатов, Е. А. Зуев, “Концепция наследования в современных языках программирования”, Труды ИСП РАН, 27:6 (2015), 169–188
Образцы ссылок на эту страницу:
https://www.mathnet.ru/rus/tisp192 https://www.mathnet.ru/rus/tisp/v27/i6/p169
|
|