概念:
定义对象间的一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。当一个对象的状态发生改变时,所有依赖与它的对象都得到通知并被自动更新。
其基本思想是:不在让各个类之间的耦合性那么强,而是创建观察者和监听者,最重要的是观察者和监听者之间的接口,这样就可以让代码之间的耦合性降低,利于维护并增强代码的可扩展性。
观察者的精髓是不在一遍一遍的去检查要监听的对象是否满足了条件,而是有了监听之后,让监听告诉你,条件满足了,可以有动作了,这时候再去做相应的工作。
具体的操作是用事件来监控一条数据状态,当状态满足之后启动一个线程来完成某些操作。在项目中用到了这个思想。也就是在项目中某一条数据审核完成之后需要立即改变其他数据的状态,或者插入数据或者修改相关数据。
优点是:降低代码耦合度。
模式是对某一类问题的处理办法的总结。也就是说遇到这一类问题的时候就可以用这种思想。