2013-11-15 29 views

回答

6

我懷疑Rx團隊選擇了這個名字,因爲它打算扮演與the original observer pattern中的主題相同的角色。

雖然Subject實現了IObservable<T>IObserver<T>,但是它的名字是可觀察的。

它是原始模式的作者,它選擇它作爲詞典定義,因爲它是被觀察的主題。

+0

由該人自己確認。 https://twitter.com/headinthebox/status/401606868499316736 –

+0

我很榮幸! :) –

+0

好的答案,並獲得確認的積分!謝謝。 – citizenmatt

2

我認爲dictionary definition指向正確的方向:「正在討論或描述的人或事物」。

請記住,ISubject只是定義一個既可觀察又可觀察的接口。從這個意義上講,一個Subject實例是一種會話中心,其他對象可以向其發送消息和/或從中接收消息。但是ISubject也是通用的,所以對話中的消息僅限於泛型類型的對象。這兩種感官都使得「正在討論的事物」成爲一個ISubject實例。