Inversion of control and Dependency injection InversionOfControl Inversion of Control Containers and the Dependency Injection pattern