为什么 RX 中的主题被称为“主题”?
-
20-12-2019 - |
题
谁能解释一下这个名字背后的原因吗?Observable和Observer很明显,但我不明白为什么叫Subject?
解决方案
我怀疑 Rx 团队在片刻的思考中选择了这个名字,因为它的目的是扮演与主题中的主题相同的角色。 原始观察者模式.
尽管Subject同时实现了 IObservable<T>
和 IObserver<T>
, ,它因其可观察的品质而得名。
这是该书的作者 原来的 选择它作为字典定义的模式,因为它是正在被观察的主题。
其他提示
我认为字典定义朝着正确的方向上的点:“人物或事物正在讨论或描述的“。
记住,一个 ISubject
简单地通过定义一个观察到的界面和观察者。从这个意义上讲,Subject
实例是一种对话集线器,其他对象可以向其发送消息和/或或接收消息。但是Isubject也是通用的,因此对话中的消息仅限于通用类型的对象。这两种感官都制作了一个生成的“正在讨论的东西”。
不隶属于 StackOverflow