This isn't so much a review as just a note that I read Dependency Injection in .NET by Mark Seemann and found it pretty helpful in clearing up some of my confusions about dependency injection frameworks.
I already was aware of the basics of constructor injection, but was experiencing some pain around problems like constructor over-injection and lots of 1-1 mapping between interfaces and implementations. This book explores ways to fix these issues and many others.
Here are some topics the book covered that I really appreciated:
- DI patterns, including the different types of injection, and Ambient Context
- DI antipatterns, including Service Locator
- DI refactorings, including Abstract Factory and dealing with cyclic dependencies
- Object composition, including implementing the composition root for common types of .NET applications
I particularly liked the way the Interception chapter went over Decorators and how to configure them, and then moved into how to implement and configure interception.