Observer观察者模式和Chain Of Responsibility职责链模式有什么区别?该如何解决

Observer观察者模式和Chain Of Responsibility职责链模式有什么区别?
RT。

我感觉职责链模式包含观察者模式。谢谢各位大侠解答

------解决方案--------------------
我也是菜鸟。没看出职责链模式包含观察者模式。
观察者模式就像订阅报纸,读者(即观察者)在报社(被观察者)登记订阅报纸,有了新报纸,报社就根据登记表将报纸发送给读者。虽然必然有一个发送顺序,但不强调必须按这个顺序。
职责链模式就像看病,病人到社区医院看病,如果社区的医生诊断不出病情,就将病人转给上一级医院,如果上一级的医院也诊断不出病因,就将病人转给更上一级,直到有医生诊断出病因。这个过程强调“顺序”。


观察者模式需要把信息通知被观察者,而职责链模式却未必,有能处理的,就不用传给下一个处理者了。


------解决方案--------------------
简单说点:

职责链是在链上找需要自己的处理的,自己不处理的传给一个。

而观察一般情况下是---注册的都要收到通知。
------解决方案--------------------
职责链最终的找到一个对象执行,前者只知道后者,不会去找其他,比如司令员命令军长说,明天栽一棵树,军长就可以命令师长,...最终是一个小兵栽了树。

而观察者必须都注册到Subject上,每个观察者都必须行动。比如司令员说打仗。则海军出动军舰、空军出动飞机。二炮发射导弹,参谋分析状况,每个人都同时响应。
------解决方案--------------------
探讨
职责链最终的找到一个对象执行,前者只知道后者,不会去找其他,比如司令员命令军长说,明天栽一棵树,军长就可以命令师长,...最终是一个小兵栽了树。

而观察者必须都注册到Subject上,每个观察者都必须行动。比如司令员说打仗。则海军出动军舰、空军出动飞机。二炮发射导弹,参谋分析状况,每个人都同时响应。