tutorial 4 : IOC and DI