我有一个包含两个事件的类,将它们称为StatusChanged
和ValueChanged
。我想将这些"流"公开为IObservable
.在同一类上实现IObservable<Status>
和IObservable<Value>
"不好"吗?它可能会引起我(或我班级的用户)的悲伤吗?
为不同类型的实现协变接口是一个非常糟糕的主意。考虑一下如果将类强制转换为 IObservable<object>
会发生什么,这现在不明确了。
我宁愿有两个属性IObservable<Status> StatusObservable{get{...}}
和IObservable<Value> ValueObservable{get{...}}
。简单,干净,它反映了您的班级提供的两个活动。