Needing the object before you can listen to their events creates a dependency on the object, so you need to create the object even when it won't be used. With a central event dispatcher you don't need both sides to be loaded.