Hezke, ale to, co popisujes, neni IoC ale Observer a abstrakce.
IoC je, ze mas servicu a ta pouziva dalsi servicy. Ty servicy, ktere pouziva, neinstancuje ani na ne neziskava odkaz pres service locator. Ma na ne odkazy, ktery se do ni dostanou v dobe jeji tvorby prostrednictvim seteru, konstruktoru... O to se stara nejaky kontejner, nebo to muzes klidne delat rucne.
Podstatna vyhoda - v dobe testovani tam muzes injektovat mocky.