Допустим есть базовый класс который изначально не реализовывал никаких интерфейсов. На нем завязана какая-то легаси логика других классов. Для расширения фукционала проще всего сделать интерфейс функционала этого класса(который в себя включает getter/setters), реализовать его этим классом, а так же унаследовать его у других интерфейсов с уже новым рассширенным функционалом. Тем самым ты получаешь новую логику и можешь пользоваться старым легаси)
Обсуждают сегодня