我有一个有两个事件的课程,称他们为StatusChanged
和ValueChanged
。我想知道揭露这些'溪流'为IObservable
。在同一个班级上实施IObservable<Status>
和IObservable<Value>
&#39; bad&#39 ;?是否可能导致我(或我班级的用户)悲伤?
答案 0 :(得分:5)
为不同类型实现协变接口是一个非常糟糕的主意。考虑如果将类强制转换为IObservable<object>
会发生什么,现在这种情况很模糊。
我宁愿拥有两个属性IObservable<Status> StatusObservable{get{...}}
和IObservable<Value> ValueObservable{get{...}}
。简单,干净,它反映了你班级提供的两件事。