Why do we need loosly coupled applications. Ways to impliment dependency injection. Deep dive into some advanced DI concepts. Talk about some Some of the benefits of using a DI framework. Cover some of the existing DI frameworks in C# with examples