demonstrate concept and usage of dependency injection