观察者在设计模式中可观察

时间:2020-10-30 12:35:50

标签: oop design-patterns

可以将Observer用作其他观察者的可观察对象吗?我的意思是这样的:

TotalPrice (observator)
    ItemPrice  (observator / observable for TotalPrice)
        ItemCharacteristic1 (observable for ItemPrice)
        ItemCharacteristic2 (observable for ItemPrice)
        ItemCharacteristic3 (observable for ItemPrice)
    ServicePrice  (observator / observable for TotalPrice)
        ServiceCharacteristic1 (observable for ServicePrice)
        ServiceCharacteristic2 (observable for ServicePrice)
        ServiceCharacteristic3 (observable for ServicePrice)

还是有更好的设计模式?

1 个答案:

答案 0 :(得分:2)

observer和observable都是接口。即使在不允许多重继承的语言(例如C#)中,也可以实现两个接口。按照约定,确实存在开箱即用的此类实现。所以,是的,只要您的实现尊重语义,就可以。