Have you ever used the new keyword to create objects? Well, Dependency Injection is the new new!
In a traditional object-oriented application, a primary program controls secondary pieces of code, such as classes in a module, library, or framework. Dependency Injection (DI) is a technique that inverts this control, using an external mechanism to insert—or inject—a reference to an implementation of a service into an object. This allows you to build complex OO applications in a more testable, maintainable, and business-focused manner.
With DI, your code doesn't require expensive factories and repetitive boilerplate, making for robust, scalable architecture. As a developer, you can focus on your core application logic and move infrastructure and architecture concerns where they belong—out of your code and into the framework's domain.
Dependency Injection is a thorough examination of this core concept for building applications in any object-oriented language or framework. This book explores Dependency Injection, sometimes called Inversion of Control, in fine detail with numerous practical examples. In it, you'll learn to apply various techniques, focusing on their strengths and limitations, with a particular emphasis on pitfalls, corner-cases, and best practices. This book covers the full range of architectural idioms as they relate to DI: from Injection, Scope, and Lifecycle to Loose Coupling and AOP Interception.
This book is written for developers and architects who want to understand Dependency Injection and successfully leverage popular DI technologies such as Spring, Google Guice, PicoContainer, and many others. This book requires a working knowledge of object-oriented programming in Java, Ruby, or C#.
Unless otherwise noted above, most orders ship within 1 to 2 days. We will promptly notify you if there is a stock problem with any items on your order and provide you with an estimated delivery date. If you have a firm need by date, please provide such information in the comment section at checkout.
Page Count (est.): 330
Pub Date: 8/14/2009