в том, что подписку можно сделать для любого типа. там не обязательно иметь какой-то родительский тип достаточно, чтобы контракт был зафиксирован в коде
в том, что подписку можно сделать для любого типа. там не обязательно иметь какой-то родительский тип достаточно, чтобы контракт был зафиксирован в коде
Контракт и есть интерфейс или класс или делегат, это не важно, важно то , что вызывающая сторона не знает о реализации, у нее только контракт или сигнатура
Контракт и есть интерфейс или класс или делегат, это не важно, важно то , что вызывающая сторона не знает о реализации, у нее только контракт или сигнатура
да, и поэтому MyFirstClass - это корректный тип для подписки
поэтому я и просил тебя весь код, - согласись не часто встретишь имя MyFirstClass в качестве интерфейса слушателя
это минимально достаточная реализация выделение отдельного интерфейса для реализации подписки - это добавление ещё одного уровня обсракций. и это не всегда нужно
это минимально достаточная реализация выделение отдельного интерфейса для реализации подписки - это добавление ещё одного уровня обсракций. и это не всегда нужно
странно но разработчики фреймфорков с тобой не согласны