Aleksei DTG
объясняя вообще на пальцах, одно из ключевых свойств интерфейса - это то. что вызывающий не должен знать о том, какой реально объект на другой стороне и как именно он имплементирует методы, в противном случае какой вообще смысл в интерфейсе
Один из минусов здесь в том, что если у тебя в классах (реализующих интерфейс) есть функции с одинаковым кодом, то тебе придётся типа ctrl+c / ctrl+v их реализовать, но это опять же всё можно вынести в компоненты
Понял, буду думать, спасибо