sweetchuck74 / gmail.com wrote:
> Nowadays, DI (Dependency Inversion) is one of the widely used design
> pattern.
> It provides several benefits, such as (1) loose coupling between
> component (2) effective and easy testing (component testing or unit
> testing)
> 
> What are the drawbacks or disadvantages of using DI?

I think the best article on the topic is this by Martin Fowler:
http://www.martinfowler.com/articles/injection.html
He does a good job of analyzing the pros and cons. And basically I agree 
with him; DI is useless unless you write 3rd party packages.

Daniel