Introduction - If you have any usage issues, please Google them yourself
In the software build process, we need to be established for certain object a " notification dependencies" - the state of an object (target object) is changed, all dependent objects (observer object) will be notified. If this dependence is too close, will make the software can not resist change. The use of object-oriented technology, this dependency can be weakened, and the formation of a stable dependency. In order to achieve a loose coupling of software architecture.