The following topics are covered:
The services are not responsible for the instantiation of the components on which they depend.
This architecture provides a loosely coupled design where the implementation of dependant services can be transparently exchanged.
This pattern has several names:
Hollywood principle: "don't call me, I will call you"
Inversion of Control
Dependency injection