Our first step in understanding this new model is to change the terminology we use to describe such systems. Again, this is because of the tight coupling of their lifecycles. In publish-subscribe systems, there are publishers of information, which in our previous discussion map to our stock price server component, and subscribers to that information or clients. Subscribers do not bind themselves directly to publishers. Instead, an intermediary object manages communication between a publisher and its subscribers.
Events introduces the concept of an event class.
An event class is a component that sits between a publisher of information and any potential subscribers. The introduction of indirection does make things more complicated, but it also adds tremendous flexibility. The introduction of this intermediate object shifts our traditional view of the COM event model. Event publishers now behave like a generic COM client. Our view of the traditional event consumer also changes.