Проблема йо-йо () — это антипаттерн объектно-ориентированного программирования, который возникает, когда программа содержит длинную иерархию наследования, из-за чего программисту приходится постоянно перемещаться из одного класса в другой, чтобы понять логику исполнения. Термин происходит из сравнения внимания программиста при чтении кода с прыгающей туда-сюда игрушкой йо-йо.

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

Глубокие иерархии наследования это симптом проблем в коде.

Примечания

Категория:Объектно-ориентированное программирование Категория:Антипаттерны