Dependency Injection

Dependency Injection

C33a23d256e895d5cc6898ea3051528c?s=128

Jason Ragsdale

April 13, 2010
Tweet

Transcript

  1. Dependency Injection An overview Jason Ragsdale – DPUG 4/13/2010

  2. Basics • DI is a technique for supplying an external

    dependency to a software component • DI involves at least three elements • A dependent • Dependencies • An injector (provider / container)
  3. Our Interface

  4. Highly coupled dependency

  5. Manually-injected dependency

  6. Framework-managed dependency injection

  7. Benefits and Drawbacks • Reduction of boiler-plate code • Flexibility

    in changing out external dependencies • Testing in general, ability to inject mock or dev dependencies
  8. Types of DI • Interface Injection • in which the

    exported module provides an interface that its users must implement in order to get the dependencies at runtime. • Setter Injection • in which the dependent module exposes a setter method that the framework uses to inject the dependency. • Constructor Injection • in which the dependencies are provided through the class constructor.
  9. References • http://en.wikipedia.org/wiki/Dependency_injection • http://martinfowler.com/articles/injection.html