Inversion of Control (IoC)